/* SnapPro v20.8 · Full-page league skins */
:root{
  --league-primary:#151515;--league-secondary:#D4AF37;--league-accent:#F0D36A;
  --league-surface:#FFFFFF;--league-text:#171717;--league-dark:#0E0F11;--league-darker:#08090A;
  --league-soft:#F3F3F1;--league-softer:#F8F7F2;--league-line:#D9D9D4;
  --league-on-primary:#fff;--league-on-secondary:#111827;--league-on-accent:#111827;
  --league-logo-image:none;--league-cover-image:none;
}

/* PUBLIC PORTAL — selecting a league turns the whole portal into that league's site. */
body.public-league-branded{background:var(--league-surface);color:var(--league-text)}
body.public-league-branded .public-topbar{
  background:linear-gradient(112deg,var(--league-darker),var(--league-primary) 68%,color-mix(in srgb,var(--league-secondary) 68%,var(--league-primary)));
  border-color:color-mix(in srgb,var(--league-accent) 55%,transparent);box-shadow:0 20px 60px color-mix(in srgb,var(--league-primary) 32%,transparent)
}
body.public-league-branded .public-topbar .login-chip{background:var(--league-secondary);color:var(--league-on-secondary);border:1px solid color-mix(in srgb,var(--league-secondary) 75%,#fff)}
body.public-league-branded .league-filter-wrap select{background:color-mix(in srgb,var(--league-darker) 80%,#fff 20%);border-color:color-mix(in srgb,var(--league-accent) 32%,transparent)}
body.public-league-branded .public-league-brandmark{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;overflow:hidden;background:#fff;border:2px solid color-mix(in srgb,var(--league-accent) 72%,#fff);box-shadow:0 6px 18px rgba(0,0,0,.25);flex:none}
body.public-league-branded .public-league-brandmark img{width:100%;height:100%;object-fit:contain;background:#fff}
body.public-league-branded .public-league-brandmark span{font-weight:950;color:var(--league-primary)}
body.public-league-branded .public-league-brandcopy{display:block;min-width:0;line-height:1.05}
body.public-league-branded .public-league-brandcopy b,body.public-league-branded .public-league-brandcopy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.public-league-branded .public-league-brandcopy b{font-size:14px;color:#fff}.public-league-brandcopy small{font-size:8px!important;text-transform:uppercase;letter-spacing:.13em;color:rgba(255,255,255,.58)!important;margin-top:4px}
body.public-league-branded .public-topbar .platform-brand{flex-direction:row;justify-content:center;min-width:180px;max-width:220px}

body.public-league-branded .public-hero{
  background-color:var(--league-darker);
  background-image:var(--league-cover-image),linear-gradient(135deg,var(--league-darker),var(--league-primary));
  background-position:center;background-size:cover;
}
body.public-league-branded .public-hero:before{background:linear-gradient(90deg,color-mix(in srgb,var(--league-darker) 97%,transparent) 0%,color-mix(in srgb,var(--league-primary) 88%,transparent) 47%,color-mix(in srgb,var(--league-secondary) 35%,transparent) 100%)}
body.public-league-branded .public-hero:after{content:"";position:absolute;right:6%;top:18%;width:min(36vw,470px);height:min(36vw,470px);background-image:var(--league-logo-image);background-size:contain;background-position:center;background-repeat:no-repeat;opacity:.14;filter:saturate(.92) contrast(1.08);z-index:1;pointer-events:none}
body.public-league-branded .hero-lines{background:repeating-linear-gradient(120deg,transparent 0 58px,color-mix(in srgb,var(--league-accent) 10%,transparent) 58px 59px)}
body.public-league-branded .hero-content{z-index:3}
body.public-league-branded .hero-content .eyebrow{color:var(--league-accent)}
body.public-league-branded .hero-content h1{max-width:820px;text-shadow:0 10px 40px rgba(0,0,0,.25)}
body.public-league-branded .hero-content p{color:color-mix(in srgb,#fff 82%,var(--league-accent) 18%)}
body.public-league-branded .hero-actions .btn-primary{background:var(--league-secondary);color:var(--league-on-secondary);box-shadow:0 12px 30px color-mix(in srgb,var(--league-secondary) 32%,transparent)}
body.public-league-branded .hero-actions .btn-ghost{border-color:color-mix(in srgb,var(--league-accent) 42%,transparent);background:color-mix(in srgb,var(--league-primary) 52%,transparent)}
body.public-league-branded .score-strip{background:color-mix(in srgb,var(--league-darker) 58%,transparent);border-color:color-mix(in srgb,var(--league-accent) 25%,transparent)}
body.public-league-branded .score-strip strong{color:var(--league-accent)}

body.public-league-branded #publicApp>.section.container{background:linear-gradient(180deg,var(--league-surface),var(--league-soft));max-width:none;width:100%;padding-left:max(18px,calc((100vw - 1180px)/2));padding-right:max(18px,calc((100vw - 1180px)/2))}
body.public-league-branded #publicApp>.section.container:nth-of-type(odd){background:linear-gradient(180deg,var(--league-softer),var(--league-surface))}
body.public-league-branded .soft-section{background:linear-gradient(145deg,var(--league-soft),var(--league-softer))}
body.public-league-branded .ink-section{background:linear-gradient(125deg,var(--league-darker),var(--league-primary) 66%,color-mix(in srgb,var(--league-secondary) 52%,var(--league-dark)))!important;color:#fff}
body.public-league-branded .section-heading .eyebrow.dark{color:var(--league-secondary)}
body.public-league-branded .section-heading h2{color:var(--league-text)}
body.public-league-branded .ink-section .section-heading h2,body.public-league-branded .ink-section .section-heading p{color:#fff}
body.public-league-branded .highlight-card,body.public-league-branded .moment-card{border:1px solid color-mix(in srgb,var(--league-primary) 24%,transparent);box-shadow:0 16px 42px color-mix(in srgb,var(--league-primary) 13%,transparent)}
body.public-league-branded .card-shade{background:linear-gradient(0deg,color-mix(in srgb,var(--league-darker) 95%,transparent),transparent 70%)}
body.public-league-branded .mvp-card,body.public-league-branded .public-card,body.public-league-branded .public-team,body.public-league-branded .feed-card-v207{background:color-mix(in srgb,var(--league-surface) 94%,#fff 6%);border-color:var(--league-line);color:var(--league-text);box-shadow:0 12px 34px color-mix(in srgb,var(--league-primary) 10%,transparent)}
body.public-league-branded .mvp-badge{background:var(--league-secondary);color:var(--league-on-secondary)}
body.public-league-branded .mvp-stat{background:var(--league-soft);color:var(--league-text)}
body.public-league-branded .contact-band{background:linear-gradient(120deg,var(--league-darker),var(--league-primary) 62%,color-mix(in srgb,var(--league-secondary) 58%,var(--league-primary)))!important}
body.public-league-branded .contact-band:before{background:linear-gradient(90deg,color-mix(in srgb,var(--league-darker) 84%,transparent),color-mix(in srgb,var(--league-primary) 55%,transparent))}
body.public-league-branded .contact-card{border-color:color-mix(in srgb,var(--league-accent) 25%,transparent);background:color-mix(in srgb,var(--league-primary) 52%,transparent)}

/* Every public league card has its own palette, even while browsing all leagues. */
.league-card.league-card-themed{position:relative;overflow:hidden;background:linear-gradient(150deg,color-mix(in srgb,var(--card-primary) 55%,#101113),color-mix(in srgb,var(--card-secondary) 35%,#121315));border-color:color-mix(in srgb,var(--card-accent) 28%,transparent);box-shadow:0 15px 36px color-mix(in srgb,var(--card-primary) 24%,transparent)}
.league-card.league-card-themed:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,var(--card-primary),var(--card-secondary),var(--card-accent))}
.league-card.league-card-themed .league-card-logo{background:var(--card-surface);border:2px solid color-mix(in srgb,var(--card-accent) 65%,#fff);color:var(--card-primary)}
.league-card.league-card-themed h3{color:#fff}.league-card.league-card-themed p{color:rgba(255,255,255,.72)}
.league-card.league-card-themed .btn-ghost{background:var(--card-secondary);border-color:var(--card-secondary);color:#fff}

/* LOGIN inherits the selected public league. */
#loginModal.league-login-branded .login-modal-card{border-color:color-mix(in srgb,var(--league-secondary) 42%,transparent);box-shadow:0 35px 100px color-mix(in srgb,var(--league-primary) 34%,transparent)}
#loginModal.league-login-branded .login-visual{background:linear-gradient(135deg,var(--league-darker),var(--league-primary) 68%,color-mix(in srgb,var(--league-secondary) 56%,var(--league-primary)))!important}
#loginModal.league-login-branded .login-visual:after{content:"";position:absolute;inset:12% 12%;background-image:var(--league-logo-image);background-size:contain;background-position:center;background-repeat:no-repeat;opacity:.15;z-index:1;pointer-events:none}
#loginModal.league-login-branded .visual-shade{background:linear-gradient(0deg,var(--league-darker),color-mix(in srgb,var(--league-primary) 42%,transparent));z-index:1}
#loginModal.league-login-branded .login-visual-copy{z-index:2}
#loginModal.league-login-branded .login-form{background:var(--league-surface);color:var(--league-text)}
#loginModal.league-login-branded .login-form:before{background:linear-gradient(90deg,var(--league-primary),var(--league-secondary),var(--league-accent))}
#loginModal.league-login-branded .login-wordmark.league-login-logo{width:min(190px,68%);height:104px;object-fit:contain;object-position:left center;filter:none;background:#fff;border-radius:16px;padding:9px;border:1px solid var(--league-line)}
#loginModal.league-login-branded .login-form .btn-primary{background:var(--league-secondary);color:var(--league-on-secondary);border-color:var(--league-secondary)}
#loginModal.league-login-branded .login-form input{border-color:var(--league-line);background:color-mix(in srgb,var(--league-surface) 94%,#fff);color:var(--league-text)}
#loginModal.league-login-branded .login-form input:focus{outline:2px solid color-mix(in srgb,var(--league-secondary) 35%,transparent);border-color:var(--league-secondary)}

/* INTERNAL APP — league identity touches every major surface; SnapPro becomes secondary. */
body.internal-league-branded .app-shell.league-branded{background:var(--league-surface);color:var(--league-text)}
body.internal-league-branded .app-shell.league-branded .sidebar{background:linear-gradient(172deg,var(--league-darker) 0%,var(--league-primary) 62%,color-mix(in srgb,var(--league-secondary) 24%,var(--league-darker)) 100%)!important;border-right-color:color-mix(in srgb,var(--league-accent) 28%,transparent)!important}
body.internal-league-branded .app-shell.league-branded .sidebar-platform-brand{height:88px;opacity:1!important;transform:none!important;filter:none!important;border-bottom-color:color-mix(in srgb,var(--league-accent) 22%,transparent)!important;display:flex;flex-direction:column;gap:5px;padding:9px 10px}
body.internal-league-branded .league-side-main-logo{width:auto!important;height:52px!important;max-width:174px!important;object-fit:contain!important;background:#fff;border-radius:12px;padding:4px;clip-path:none!important;filter:none!important}
body.internal-league-branded .league-side-fallback{width:52px;height:52px;border-radius:13px;background:var(--league-secondary);color:var(--league-on-secondary);display:grid;place-items:center;font-weight:950}
body.internal-league-branded .league-side-powered{font-size:8px;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.48)}
body.internal-league-branded .league-side-powered b{color:rgba(255,255,255,.72)}
body.internal-league-branded .side-profile{background:color-mix(in srgb,var(--league-primary) 38%,transparent);border-color:color-mix(in srgb,var(--league-accent) 20%,transparent)}
body.internal-league-branded .league-context{border-color:color-mix(in srgb,var(--league-accent) 19%,transparent)}
body.internal-league-branded .app-shell.league-branded #sideLogo{background:#fff!important;border-color:color-mix(in srgb,var(--league-accent) 60%,#fff)!important;color:var(--league-primary)!important}
body.internal-league-branded .app-shell.league-branded #sideLogo img{object-fit:contain;background:#fff}
body.internal-league-branded .nav-group-label{color:color-mix(in srgb,var(--league-accent) 78%,#fff)!important}
body.internal-league-branded .nav-item{color:rgba(255,255,255,.78)}
body.internal-league-branded .nav-item:hover{background:color-mix(in srgb,var(--league-secondary) 14%,transparent);color:#fff}
body.internal-league-branded .app-shell.league-branded .nav-item.active{background:linear-gradient(90deg,color-mix(in srgb,var(--league-accent) 32%,transparent),color-mix(in srgb,var(--league-secondary) 12%,transparent))!important;border-left-color:var(--league-accent)!important;color:#fff!important}
body.internal-league-branded .app-shell.league-branded .nav-item.active .nav-icon{color:var(--league-accent)!important}
body.internal-league-branded .sidebar-foot{border-top-color:color-mix(in srgb,var(--league-accent) 16%,transparent)}

body.internal-league-branded .app-shell.league-branded .workspace{background:radial-gradient(circle at 90% 0,color-mix(in srgb,var(--league-secondary) 9%,transparent),transparent 26%),linear-gradient(155deg,var(--league-surface),var(--league-soft))!important;color:var(--league-text)!important}
body.internal-league-branded .app-shell.league-branded .workspace-top{background:linear-gradient(90deg,color-mix(in srgb,var(--league-surface) 95%,#fff),color-mix(in srgb,var(--league-soft) 94%,#fff))!important;border-bottom:1px solid var(--league-line)!important;box-shadow:0 7px 22px color-mix(in srgb,var(--league-primary) 6%,transparent)}
body.internal-league-branded .workspace-top:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,var(--league-primary),var(--league-secondary),var(--league-accent));opacity:.72}
body.internal-league-branded #workspaceEyebrow{color:var(--league-secondary)!important}
body.internal-league-branded .app-profile-chip{background:color-mix(in srgb,var(--league-surface) 94%,#fff);border-color:var(--league-line);color:var(--league-text);box-shadow:0 7px 20px color-mix(in srgb,var(--league-primary) 8%,transparent)}
body.internal-league-branded .app-profile-chip:hover,body.internal-league-branded .app-profile-chip[aria-expanded=true]{border-color:var(--league-secondary);background:var(--league-softer)}
body.internal-league-branded .app-profile-chip img,body.internal-league-branded .app-menu-head img{border-color:var(--league-secondary)}
body.internal-league-branded .app-profile-chip i,body.internal-league-branded .app-profile-menu>button span{color:var(--league-secondary)}
body.internal-league-branded .app-profile-menu{background:var(--league-surface);color:var(--league-text);border-color:var(--league-line)}
body.internal-league-branded .app-profile-menu>button{color:var(--league-text)}
body.internal-league-branded .app-profile-menu>button:hover{background:var(--league-soft)}

body.internal-league-branded .panel,body.internal-league-branded .team-card,body.internal-league-branded .game-card,body.internal-league-branded .payment-card,body.internal-league-branded .kpi-card,body.internal-league-branded .subscription-card,body.internal-league-branded .profile-card{background:color-mix(in srgb,var(--league-surface) 96%,#fff)!important;border-color:var(--league-line)!important;color:var(--league-text)!important;box-shadow:0 12px 34px color-mix(in srgb,var(--league-primary) 7%,transparent)!important}
body.internal-league-branded .panel-head h2,body.internal-league-branded .panel h2,body.internal-league-branded .panel h3{color:var(--league-text)}
body.internal-league-branded .team-meta,body.internal-league-branded .panel small{color:color-mix(in srgb,var(--league-text) 62%,var(--league-surface))}
body.internal-league-branded .app-shell.league-branded .dashboard-hero{background-image:linear-gradient(92deg,var(--league-darker),color-mix(in srgb,var(--league-primary) 92%,transparent) 58%,color-mix(in srgb,var(--league-secondary) 38%,transparent)),var(--league-cover-image),var(--football-bg)!important;background-size:cover!important;border-color:color-mix(in srgb,var(--league-accent) 45%,transparent)!important}
body.internal-league-branded .dashboard-hero:after{content:"";position:absolute;right:4%;top:10%;bottom:10%;width:32%;background-image:var(--league-logo-image);background-size:contain;background-position:center;background-repeat:no-repeat;opacity:.13;pointer-events:none}
body.internal-league-branded .dashboard-hero>*{position:relative;z-index:1}
body.internal-league-branded .app-shell.league-branded .btn-primary{background:linear-gradient(135deg,var(--league-secondary),color-mix(in srgb,var(--league-secondary) 72%,var(--league-primary)))!important;border-color:var(--league-secondary)!important;color:var(--league-on-secondary)!important;box-shadow:0 9px 25px color-mix(in srgb,var(--league-secondary) 24%,transparent)!important}
body.internal-league-branded .btn-soft{background:var(--league-softer);color:var(--league-text);border-color:var(--league-line)}
body.internal-league-branded .btn-soft:hover{border-color:var(--league-secondary);background:var(--league-soft)}
body.internal-league-branded .settings-tabs button.active,body.internal-league-branded .tab-btn.active{background:var(--league-primary)!important;color:var(--league-on-primary)!important;border-color:var(--league-primary)!important}
body.internal-league-branded .data-table{background:var(--league-surface);color:var(--league-text)}
body.internal-league-branded .data-table th{background:var(--league-soft);color:var(--league-text);border-bottom-color:var(--league-line)}
body.internal-league-branded .data-table td{border-bottom-color:var(--league-line)}
body.internal-league-branded .data-table tbody tr:hover{background:var(--league-softer)}
body.internal-league-branded input,body.internal-league-branded select,body.internal-league-branded textarea{background:color-mix(in srgb,var(--league-surface) 96%,#fff)!important;color:var(--league-text)!important;border-color:var(--league-line)!important}
body.internal-league-branded input:focus,body.internal-league-branded select:focus,body.internal-league-branded textarea:focus{outline:2px solid color-mix(in srgb,var(--league-secondary) 26%,transparent)!important;border-color:var(--league-secondary)!important}
body.internal-league-branded .drop-zone{border-color:color-mix(in srgb,var(--league-secondary) 42%,var(--league-line));background:var(--league-softer)}
body.internal-league-branded .inline-alert.ok{background:color-mix(in srgb,var(--league-primary) 8%,var(--league-surface));border-color:color-mix(in srgb,var(--league-primary) 26%,var(--league-line))}
body.internal-league-branded .drawer-card,body.internal-league-branded .modal-card{background:var(--league-surface);color:var(--league-text);border-color:var(--league-line)}
body.internal-league-branded .profile-cover{background:linear-gradient(120deg,var(--league-darker),var(--league-primary),color-mix(in srgb,var(--league-secondary) 54%,var(--league-primary)))}
body.internal-league-branded .profile-avatar{border-color:var(--league-secondary)}
body.internal-league-branded .summary-card:hover,body.internal-league-branded .summary-link:hover{border-color:color-mix(in srgb,var(--league-secondary) 58%,transparent);box-shadow:0 14px 36px color-mix(in srgb,var(--league-primary) 12%,transparent)}
body.internal-league-branded .summary-cta,body.internal-league-branded .summary-arrow{color:var(--league-secondary)}

/* Automatic theme UX */
.auto-theme-status{margin-top:14px;padding:11px 13px;border-radius:12px;background:#f6f7f8;border:1px solid #e1e3e5;color:#59616a;font-size:.78rem;line-height:1.45}
.auto-theme-status.working{border-color:#c9d7eb;background:#f0f6ff}.auto-theme-status.ok{border-color:#b8d9c6;background:#f1faf5;color:#245f3e}.auto-theme-status.warn{border-color:#ead6a7;background:#fff9e9;color:#745b1d}
.re-detect-theme{margin-top:14px}

@media(max-width:760px){
  body.public-league-branded .public-topbar .platform-brand{max-width:150px;justify-self:end}
  body.public-league-branded .public-league-brandmark{width:36px;height:36px;border-radius:10px}
  body.public-league-branded .public-league-brandcopy b{font-size:11px}.public-league-brandcopy small{font-size:6px!important}
  body.public-league-branded .public-hero:after{width:60vw;height:60vw;right:-12%;top:22%;opacity:.1}
  body.internal-league-branded .app-shell.league-branded .sidebar-platform-brand{height:78px}
  body.internal-league-branded .league-side-main-logo{height:45px!important;max-width:145px!important}
}
