/* DraftDayPlanner layout.css - header, footer, side menu, and page layout */

:root{--side-divider-strong:#ffffff38;--side-divider-soft:#ffffff26;}

/* SECTION 02.1 - Header Shell */
header{display:block;background:var(--green-dark);color:#fff;width:100%;box-sizing:border-box;padding:0;border-bottom:0;box-shadow:none;}
header.sticky{position:fixed;top:0;left:0;right:var(--scrollbar-edge);width:auto;z-index:1000;}
.app-chrome{position:fixed;top:0;left:0;right:var(--scrollbar-edge);z-index:1000;}
.app-chrome header.sticky{position:static;left:auto;right:auto;width:100%;}
.public-subnav{display:none;}
body:not(.has-active-league) .public-subnav{display:flex;align-items:center;justify-content:center;height:32px;box-sizing:border-box;background:#061d2e;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.1);}
body:not(.has-active-league) .public-subnav a,
body:not(.has-active-league) .public-grid-toggle{color:#bdd8f0;text-decoration:none;font-size:.76rem;font-weight:800;line-height:1;padding:0 14px;}
body:not(.has-active-league) .public-subnav a:not(:first-child),
body:not(.has-active-league) .public-grid-toggle{border-left:1px solid rgba(255,255,255,.28);}
body:not(.has-active-league) .public-subnav a:hover,
body:not(.has-active-league) .public-grid-toggle:hover{color:#fff;text-decoration:underline;}
.public-grid-toggle{display:none;background:transparent;border:0;font-family:inherit;cursor:pointer;}
body:not(.has-active-league) .public-grid-toggle{display:inline-flex;align-items:center;height:100%;}
body:not(.has-active-league) .public-grid-toggle{border-left:1px solid rgba(255,255,255,.28);}
body.show-public-grid:not(.has-active-league) .public-page-grid{outline:3px solid rgba(21,86,255,.95);outline-offset:-3px;}
body.show-public-grid:not(.has-active-league) .welcome-start-card--intro,
body.show-public-grid:not(.has-active-league) .welcome-create-panel,
body.show-public-grid:not(.has-active-league) .welcome-start-card--steps,
body.show-public-grid:not(.has-active-league) .public-feature-grid,
body.show-public-grid:not(.has-active-league) .public-home-split>div{outline:2px solid rgba(21,86,255,.9);outline-offset:-2px;}
body.show-public-grid:not(.has-active-league) .welcome-intro-copy p,
body.show-public-grid:not(.has-active-league) .welcome-start-card--intro h2,
body.show-public-grid:not(.has-active-league) .create-league-modal h2,
body.show-public-grid:not(.has-active-league) .create-league-fields,
body.show-public-grid:not(.has-active-league) .create-league-sub,
body.show-public-grid:not(.has-active-league) .create-league-actions,
body.show-public-grid:not(.has-active-league) .public-feature-grid article{box-shadow:inset 0 0 0 2px rgba(21,86,255,.75);}
body.show-public-grid:not(.has-active-league) .public-page-grid::before{content:"page content bounds";position:absolute;left:50%;top:10px;transform:translateX(-50%);z-index:6000;padding:3px 7px;border-radius:4px;background:rgba(21,86,255,.9);color:#fff;font-size:11px;font-weight:800;pointer-events:none;}
body.show-public-grid:not(.has-active-league) .public-page-grid{position:relative;}
body.show-public-grid:not(.has-active-league) .public-home-section-inner::before{content:"content bounds";position:absolute;left:0;top:0;z-index:2;padding:3px 7px;border-radius:4px;background:rgba(21,86,255,.9);color:#fff;font-size:11px;font-weight:800;pointer-events:none;}
body.show-public-grid:not(.has-active-league) .public-home-section-inner{position:relative;}
body.show-public-grid:not(.has-active-league) footer{position:relative;outline:3px solid rgba(21,86,255,.95);outline-offset:-3px;}
body.show-public-grid:not(.has-active-league) .no-league-footer-links,
body.show-public-grid:not(.has-active-league) .no-league-footer-copy{box-shadow:inset 0 0 0 2px rgba(21,86,255,.75);}
body.show-public-grid:not(.has-active-league) .no-league-footer-meta::after{content:"";position:absolute;top:0;right:0;width:10px;height:80px;pointer-events:none;background:repeating-linear-gradient(to bottom,rgba(21,86,255,.16) 0 19px,rgba(21,86,255,.95) 19px 20px);outline:2px solid rgba(21,86,255,.95);}
body.show-public-grid:not(.has-active-league) footer::before{content:"footer bounds";position:absolute;left:50%;top:6px;transform:translateX(-50%);z-index:2;padding:3px 7px;border-radius:4px;background:rgba(21,86,255,.9);color:#fff;font-size:11px;font-weight:800;pointer-events:none;}
.header-shell{width:calc(100% - (var(--content-edge) * 2) - 70px);max-width:calc(var(--content-max) - (var(--content-edge) * 2) - 70px);margin:0 auto;padding:8px 0 7px;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"brand controls" "context context";align-items:center;column-gap:10px;row-gap:2px;}
header h1{grid-area:brand;font-size:1.44rem;text-align:left;font-weight:900;line-height:1.1;margin:0;padding:0;letter-spacing:0;color:#fff;white-space:nowrap;}
header .header-top{grid-area:controls;display:flex;align-items:center;justify-content:flex-start;gap:3px;max-width:none;margin:0;padding:0;}
.header-top .header-right{display:inline-flex;align-items:center;gap:3px;}
.header-right{display:inline-flex;align-items:center;gap:3px;}
.header-right::before,.view-switch::before{content:"";display:block;width:1px;height:24px;margin:0 5px 0 2px;background:#344757;flex:0 0 auto;}

/* SECTION 02.2 - Header Buttons */
#menu-button{width:36px;min-width:36px;height:var(--chip-h);padding:0;justify-self:start;background:transparent;color:#fff;border:0;transform:translateX(-8px);}
#menu-button:hover{background:#142330;}
#teams-button{width:auto;min-width:0;height:calc(var(--chip-h) - 2px)!important;min-height:calc(var(--chip-h) - 2px)!important;max-height:calc(var(--chip-h) - 2px);border-radius:9px;line-height:1;font-size:var(--control-font);box-sizing:border-box;padding:0 var(--chip-pad-x);background:transparent!important;color:#eef6fa;border:0;}
#teams-button:hover{background:#142330!important;color:#fff;}
#teams-button:disabled{opacity:1;color:#eef6fa;cursor:not-allowed;}
#teams-button:disabled:hover{background:transparent!important;color:#eef6fa;}
.hdr-size,#menu-button,#invite-button,.view-switch,.view-toggle,.view-toggle > #personal-view,.view-toggle > #shared-view,.header-right > *{height:var(--chip-h);min-height:var(--chip-h);display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;font-size:var(--control-font);font-weight:700;line-height:1;}

/* SECTION 02.3 - View Switch */
.view-switch{position:relative;display:inline-flex;align-items:center;gap:0;background:transparent;border:0;border-radius:0;padding:0;height:var(--chip-h);min-height:var(--chip-h);overflow:visible;}
.view-switch::after{content:none;}
.view-switch-label{display:inline-flex;align-items:center;height:100%;padding:0 6px;color:#eef6fa;font-size:var(--control-font);font-weight:700;line-height:1;}
.view-toggle{position:relative;display:inline-flex;overflow:hidden;border-radius:9px;background:#111f2b;height:calc(var(--chip-h) - 2px)!important;min-height:calc(var(--chip-h) - 2px)!important;}
.view-switch button{background:#111f2b;color:rgba(238,246,250,.72);border-radius:0;padding:0 8px;font-weight:700;width:91px;height:100%;min-height:100%;border:0;}
.view-toggle #personal-view{position:relative;padding-right:8px;}
.view-toggle #shared-view{position:relative;padding-left:8px;border-left:0;}
.view-switch button:not(.active):hover{background:#192b3a;color:#fff;}
.view-switch button.active{background:#142f43;color:#fff;border:0;box-shadow:none;box-sizing:border-box;text-decoration:none;}
body:has(.intro-copy--welcome) .view-toggle{background:transparent;}
body:has(.intro-copy--welcome) .view-switch button{background:transparent;color:#eef6fa;}
body:has(.intro-copy--welcome) .view-switch button.active{background:transparent;color:#eef6fa;}
body:has(.intro-copy--welcome) .view-switch button:not(.active):hover,
body:has(.intro-copy--welcome) .view-switch button.active:hover{background:#142330;color:#fff;}

/* SECTION 02.4 - Invite Button */
#invite-button{align-items:center;justify-content:center;height:calc(var(--chip-h) - 2px)!important;min-height:calc(var(--chip-h) - 2px)!important;padding:4px var(--chip-pad-x);border-radius:9px;color:#eef6fa;background:transparent;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:0 0 auto;width:auto;max-width:360px;border:0;}
#invite-button{margin-left:auto;}
#invite-button:hover{background:#142330;color:#fff;}
#invite-button:disabled{opacity:1;color:#eef6fa;}
#invite-button{display:inline-flex;}
.view-shared #invite-button{display:inline-flex;}
.view-personal #invite-button{display:inline-flex;}
.invite-copy-popover{position:fixed;z-index:7000;background:#e7f0f6;color:#15222e;border:1px solid var(--shell-border);border-radius:8px;padding:6px 10px;font-size:.78rem;font-weight:800;line-height:1;box-shadow:0 4px 12px rgba(15,26,36,.12);opacity:0;transform:translateY(-3px);transition:opacity .16s ease,transform .16s ease;pointer-events:none;white-space:nowrap;}
.invite-copy-popover.is-visible{opacity:1;transform:translateY(0);}
.invite-copy-popover.is-error{background:#fff0f0;color:#9b1c1c;border-color:#e2b8b8;}

/* SECTION 02.5 - League Title */
#league-title{justify-self:start;text-align:left;margin:0;}
#league-title .site-brand{display:inline-flex;align-items:center;gap:8px;color:#fff;text-decoration:none;}
#league-title .joined-text{margin-left:6px;font-weight:600;opacity:.9;white-space:nowrap;}
.brand-ball{display:inline-block;font-size:1em;margin-right:0;transform:translateX(-2px);}
.brand-text{display:inline-block;transform:translateX(-3px);}
.header-context{grid-area:context;width:calc(100% + 40px);margin:0 0 0 -20px;text-align:center;background:transparent;}
.context-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;min-height:0;padding:1.5px 20px 2px;line-height:1.1;white-space:nowrap;overflow:visible;text-overflow:ellipsis;font-weight:700;border-radius:0;transform:translateY(.5px);}
.context-row-main{background:#3b6f92;color:#fff;font-size:1rem;}
.context-row-sub{background:transparent;color:#eef6fa;font-size:.82rem;border:0;}
.context-item{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.context-league{text-align:left;font:inherit;font-weight:inherit;line-height:inherit;}
.context-league strong{font:inherit;font-weight:inherit;}
.context-default{text-align:center;}
.context-default{overflow:visible;}
.context-user{text-align:right;}
.context-team-inline{font-weight:700;}
.context-view-hint{display:inline-flex;align-items:center;justify-content:flex-end;overflow:visible;color:#eef6fa;font-size:inherit;font-weight:700;line-height:1.1;text-align:right;opacity:1;}
.context-view-hint #calendar-view-hint-text{transform:translateX(-2px);}
.context-info-button{position:relative;display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;margin:0 0 0 3px;padding:0;border:0;border-radius:999px;background:transparent;color:rgba(238,246,250,.78);font-size:15px;font-weight:700;line-height:1;vertical-align:middle;transform:translate(-3px,-1px);transform-origin:center;overflow:visible;}
.context-info-button:hover{background:rgba(238,246,250,.12);color:#fff;}
.helper-tooltip-anchor{position:relative;overflow:visible!important;}
.helper-tooltip{position:absolute;left:50%;top:calc(100% + 10px);display:block;visibility:hidden;width:max-content;max-width:min(240px,calc(100vw - 24px));padding:9px 11px;border:1px solid #8f9aa5;border-radius:7px;background:#fff;color:#28333d;font-size:13px;font-weight:500;line-height:1.25;text-align:left;text-decoration:none;white-space:normal;box-shadow:0 3px 8px rgba(0,0,0,.18);z-index:9000;pointer-events:none;transform:translateX(-50%);opacity:0;transition:opacity .12s ease .5s,visibility 0s linear .62s;}
.helper-tooltip strong{font-weight:800;}
.helper-tooltip::after{content:"";position:absolute;left:50%;top:-7px;width:12px;height:12px;background:#fff;border-left:1px solid #8f9aa5;border-top:1px solid #8f9aa5;transform:translateX(-50%) rotate(45deg);}
.helper-tooltip--right{left:auto;right:-5px;transform:none;}
.helper-tooltip--right::after{left:auto;right:7px;transform:rotate(45deg);}
.helper-tooltip-anchor:hover .helper-tooltip,.helper-tooltip-anchor:focus-visible .helper-tooltip{visibility:visible;opacity:1;transition-delay:.5s,0s;}
.helper-tooltip-anchor.is-tooltip-open .helper-tooltip,.context-info-button:hover .helper-tooltip,.best-filter-info:hover .helper-tooltip,.teams-status-info:hover .helper-tooltip{visibility:visible;opacity:1;transition-delay:0s;}
.context-default{text-align:right;}
.context-edit{display:inline;background:transparent;color:#eef6fa;font:inherit;font-weight:400;text-decoration:underline;padding:0;border:0;border-radius:0;}
.context-edit:hover{opacity:1;}
.context-edit.is-disabled{cursor:not-allowed;text-decoration:none;opacity:.72;}
.context-edit.is-disabled:hover{opacity:.72;}
.view-shared .context-edit{visibility:hidden;pointer-events:none;}

/* SECTION 02.6 - Side Menu Shell */
.side-menu{position:fixed;top:0;left:0;width:80%;max-width:320px;height:100%;background:var(--green-dark);color:#fff;padding:20px;z-index:2000;overflow:hidden;transform:translateX(-100%);transition:transform .3s ease;display:flex;flex-direction:column;}
[data-app-only][hidden],.side-menu[hidden]{display:none!important;}
.side-menu.open{transform:translateX(0);}
.side-menu h2{margin-bottom:6px;position:relative;padding-bottom:6px;color:#fff;font-weight:800;}
.side-menu ul{list-style:none;}
.side-menu ul li{border-bottom:1px solid var(--side-divider-soft);}
.side-menu ul li:last-child{border-bottom:0;}
.side-menu ul li>button{width:100%;background:transparent;color:#fff;text-align:left;border-radius:0;padding:12px 0;}
#side-menu button{color:#fff;font-family:Arial,Helvetica,sans-serif;}
#side-menu button:hover{background:var(--green-hover);color:#fff;}
#create-league-button{width:100%;margin:0;background:var(--green-dim);transform:translateY(2px);}
.side-calendars-head{position:relative;display:flex;align-items:center;justify-content:flex-start;gap:8px;color:#fff;margin-top:10px;margin-bottom:-2px;padding-top:12px;border-top:0;font-size:16px;font-weight:700;}
.side-calendars-head::before{content:"";position:absolute;left:0;right:0;top:4px;border-top:1px solid var(--side-divider-strong);}
.side-calendars-head>span{transform:translateX(9px);}
#side-help-button{position:relative;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;margin:0 0 0 -7px;padding:0;border-radius:999px;background:transparent;color:rgba(255,255,255,.72);font-size:17px;line-height:1;transform:translate(8px,-2px);}
#side-help-button::before{content:none;}
#side-help-button:hover{background:rgba(238,246,250,.12);color:#fff;}
#side-help-button:hover::before{background:transparent;}
#close-side-menu{position:relative;width:100%;max-width:240px;margin:4px auto 2px;background:var(--green-dim);transform:translateY(4px);}
#side-menu #create-league-button:hover,#side-menu #close-side-menu:hover{background-color:var(--green-hover);color:#fff;opacity:1;}

/* SECTION 02.7 - Side Menu Header */
.header-grid{display:grid;grid-template-columns:1fr var(--menuIcon);align-items:start;column-gap:var(--titleGap);margin-bottom:14px;}
.title-wrap{min-width:0;line-height:1.08;}
.title-line{display:block;margin:0;font-weight:800;white-space:nowrap;font-size:clamp(18px,5.5vw,24px);}
.title-subline{display:block;margin-top:4px;font-weight:700;white-space:nowrap;font-size:clamp(12px,3.4vw,15px);opacity:.9;}
.logo-fixed{width:var(--menuIcon);height:var(--menuIcon);object-fit:contain;display:block;border-radius:8px;}

/* SECTION 02.8 - Side Menu League List */
#league-list{flex:1 1 auto;overflow-y:auto;overflow-x:hidden;padding:4px 0 8px;margin:0;list-style:none;position:relative;border-top:0;border-bottom:0;box-shadow:none;}
#league-list::before,#league-list::after{content:none;background:none;}
#league-list li{margin-left:4px;margin-right:4px;}
.league-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px;margin:8px 0 12px;padding-left:8px;padding-right:2px;width:100%;}
.league-more{width:28px;height:34px;padding:0 2px;border-radius:10px;background:transparent;border:0;font-size:18px;line-height:1;}
.league-more:hover{background:#142330!important;color:#fff!important;}
.league-menu-action{all:unset;box-sizing:border-box;display:block;width:100%;padding:8px 8px 5px;border-radius:0;color:#fff;cursor:pointer;font-size:14px;line-height:1.1;}
.league-menu-action:first-child{padding:8px 8px 5px;}
.league-menu-action--spaced{margin-top:0;padding:5px 8px 8px;}
.league-menu-action:hover{background:#142330;color:#fff;}
.league-trash{display:none;}
.league-row:hover .league-trash{display:none;}
#side-menu .league-open{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:100%;min-width:0;min-height:47px;padding:4px 8px;background:var(--pill-bg);color:var(--pill-fg);text-align:center;transition:background-color .18s ease,color .18s ease;}
.league-open-name,.league-open-team{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.league-open-name,.league-open-team{font-family:Arial,Helvetica,sans-serif;}
.league-open-name{font-size:12px;font-weight:800;text-transform:uppercase;}
.league-open-team{font-size:11px;font-weight:700;}
#side-menu .league-open:hover,#side-menu .league-open:focus{background:var(--green-hover);color:#fff;opacity:1;filter:none;}
#side-menu .league-open:focus-visible{background:var(--pill-bg-hover);color:var(--pill-fg-hover);}

/* SECTION 02.9 - Side Menu Legal Area */
#side-menu p{position:relative;border-top:0;padding-top:12px;margin-top:16px;margin-bottom:4px;}
#side-menu p::before{content:"";position:absolute;left:0;right:0;top:2px;border-top:1px solid var(--side-divider-strong);}
#legal-links-container{width:max-content;max-width:calc(100% - 20px);margin:8px auto 8px;padding:0;text-align:left;border-top:0;border-bottom:0;box-shadow:none;display:grid;grid-template-columns:repeat(4,max-content);grid-template-rows:repeat(2,auto);grid-auto-flow:column;justify-content:center;gap:6px 8px;transform:translateY(4px);}
#legal-links-container::before,#legal-links-container::after{content:none;background:none;}
#legal-links-container .legal-link{text-decoration:none;}
#side-menu .legal-link{color:#888;text-decoration:none;font-size:.66rem;line-height:1.1;cursor:pointer;padding:0;background:none;border:none;}
#side-menu .legal-link:hover{color:#bbb;text-decoration:underline;}
#side-menu .side-grid-toggle{border:0;text-align:left;font-family:inherit;line-height:1.1;}
body.show-app-grid header,
body.show-app-grid main,
body.show-app-grid footer,
body.show-app-grid .header-shell,
body.show-app-grid .header-context,
body.show-app-grid .context-row,
body.show-app-grid #calendar-grid,
body.show-app-grid .month-section,
body.show-app-grid .month-bar,
body.show-app-grid .month-grid,
body.show-app-grid .calendar-cell:not(.placeholder){outline:2px solid rgba(21,86,255,.82);outline-offset:-2px;}
body.show-app-grid main{background-image:linear-gradient(to bottom, rgba(21,86,255,.36) 1px, transparent 1px);background-size:100% 20px;}
#side-menu .footer-disclaimer{text-align:center;font-size:.75rem;color:#888;margin-top:0;padding-top:10px;transform:translateY(2px);}
#side-menu hr{display:none;}

/* SECTION 02.10 - Footer */
footer{position:fixed;left:0;right:var(--scrollbar-edge);bottom:0;background:var(--green-dark);text-align:center;padding:12px;padding-bottom:calc(12px + env(safe-area-inset-bottom));border-top:0;box-shadow:none;z-index:1200;}
footer button{display:block;margin:0 auto;width:84%;max-width:520px;font-size:1rem;}
#best-times-button{background:var(--green);}
#best-times-button:hover{background:var(--green-hover);}
#best-times-button:disabled,#best-times-button.is-disabled{opacity:.8;cursor:not-allowed;}
.no-league-footer-meta{display:none;}
.footer-links{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:6px;font-size:.66rem;line-height:1;white-space:nowrap;}
.footer-links a{color:#2b91e8;text-decoration:underline;}
.footer-links span{color:rgba(255,255,255,.55);}

/* SECTION 02.11 - Main Content Width And Ad Slots */
main{max-width:calc(var(--content-max) - 70px);margin:0 auto;padding-top:calc(var(--header-height) - 1px);box-sizing:border-box;}
.ad-slot{display:block;width:100%;min-height:0;}
:root{--welcome-content-width:880px;--welcome-left-card-width:430px;--welcome-create-card-width:365px;--welcome-card-gap:17px;}
body.has-bottom-ad{padding-bottom:0;}
body:not(.has-active-league).has-bottom-ad{padding-bottom:0;}
.ad-shell{position:fixed;z-index:1100;box-sizing:border-box;background:#fff;border:1px solid #cfdbe4;box-shadow:0 2px 8px rgba(17,26,34,.12);color:#667684;text-align:center;}
.ad-shell[data-ad-disabled="approval"]{display:none!important;visibility:hidden!important;pointer-events:none!important;}
.ad-shell:not(.ad-loaded){background:transparent;border:0;box-shadow:none;pointer-events:none;}
.ad-shell--rail:not(.ad-loaded){display:none!important;}
.ad-shell:not(.ad-loaded) .ad-placeholder{background:transparent;}
.ad-shell:not(.ad-loaded) .ad-close,
.ad-shell:not(.ad-loaded) .ad-label{display:none!important;}
.ad-label{position:absolute;left:0;right:0;bottom:2px;color:#667684;font-size:9px;font-weight:700;line-height:1;text-transform:uppercase;letter-spacing:0;z-index:2;pointer-events:none;}
.ad-placeholder{height:100%;display:block;background:#eef2f5;color:#5f6c78;font-size:13px;font-weight:800;}
.ad-unit-slot{width:100%;height:100%;}
.ad-close{position:absolute;right:-9px;top:-9px;width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;margin:0;padding:0;border-radius:999px;background:#dbe6ed;color:#15222e;font-size:13px;font-weight:900;line-height:1;z-index:1;}
.ad-close:hover{background:#cbd9e3;color:#111a22;}
.ad-shell--rail{right:calc(var(--scrollbar-edge) + 18px);top:calc(var(--header-height) + 14px);bottom:calc(var(--footer-h) + 18px);width:120px;}
body.has-bottom-ad .ad-shell--rail{bottom:calc(var(--footer-h) + 96px + env(safe-area-inset-bottom));}
.ad-shell--bottom{position:fixed;left:50%;right:auto;bottom:calc(var(--footer-h) + env(safe-area-inset-bottom));width:min(calc(var(--content-max) - 70px),calc(100vw - var(--scrollbar-edge) - 74px));height:96px!important;min-height:96px;max-height:96px;margin:0;padding:0;transform:translateX(-50%);z-index:1100;background:#eef2f5;border:0;border-top:1px solid #d6e0e7;box-shadow:0 -2px 8px rgba(17,26,34,.08);overflow:visible;}
.ad-shell--bottom .ad-label{bottom:5px;}
.ad-shell--bottom .ad-placeholder{width:100%;height:96px!important;min-height:96px;max-height:96px;margin:0 auto;overflow:hidden;background:#eef2f5;border:0;}
.ad-shell--bottom .ad-unit-slot{display:block!important;width:100%!important;height:78px!important;min-height:78px!important;max-height:78px!important;overflow:hidden!important;}
.ad-shell--bottom iframe{height:78px!important;max-height:78px!important;overflow:hidden!important;}
.ad-shell--bottom .ad-close{right:-9px;top:-9px;}
.ad-shell.is-closed{display:none;}
body:has(.modal-content.intro-content) .ad-shell,
body:has(.modal-content.create-league-content) .ad-shell,
body:has(.modal-content.league-start-content) .ad-shell{display:none!important;}
.homepage-intro{box-sizing:border-box;max-width:760px;color:#28333d;text-align:center;}
.homepage-intro--details{position:fixed;left:50%;top:42%;width:min(760px,calc(100% - 40px));margin:0;padding:6px 20px 8px;transform:translate(-50%,-50%);}
.homepage-intro h2{margin:0 0 5px;font-size:calc(1rem - 1px);line-height:1.2;}
.homepage-intro p{margin:0 0 6px;font-size:.82rem;line-height:1.35;}
.homepage-intro a{color:#1e74c9;font-size:.86rem;font-weight:700;}
body:not(.has-active-league){--header-height:88px;--scrollbar-edge:0px;background:var(--green-dark);overflow-y:auto;}
body:not(.has-active-league) .header-shell{width:100%;max-width:100%;grid-template-columns:1fr;grid-template-areas:"brand";justify-items:center;padding:14px 0 11px;}
body:not(.has-active-league) #league-title{justify-self:center;text-align:center;}
body:not(.has-active-league) .header-top,
body:not(.has-active-league) .header-context{display:none;}
body:not(.has-active-league) #best-times-button{display:none;}
body:not(.has-active-league) footer{display:flex;align-items:center;justify-content:center;min-height:35px;height:35px;padding:0 clamp(8px,2vw,24px);background:var(--green-dark);}
body:not(.has-active-league) .no-league-footer-meta{display:flex;align-items:center;justify-content:center;gap:clamp(10px,2.2vw,24px);width:min(760px,100%);color:#888;font-family:Arial,Helvetica,sans-serif;font-size:clamp(.68rem,1.55vw,.82rem);font-weight:400;line-height:1.1;}
body:not(.has-active-league) .no-league-footer-links{display:flex;align-items:center;gap:0;flex-wrap:wrap;}
body:not(.has-active-league) .no-league-footer-links a{color:#888;text-decoration:none;}
body:not(.has-active-league) .no-league-footer-links a:not(:first-child){border-left:1px solid rgba(255,255,255,.28);margin-left:7px;padding-left:7px;}
body:not(.has-active-league) .no-league-footer-links a:hover{color:#bbb;text-decoration:underline;}
body:not(.has-active-league) .no-league-footer-copy{white-space:nowrap;text-align:right;}
body:not(.has-active-league) .ad-shell{display:none!important;}
.welcome-start-screen[hidden]{display:none!important;}
.welcome-start-screen{position:fixed;left:0;right:var(--scrollbar-edge);top:var(--header-height);bottom:var(--footer-h);box-sizing:border-box;background:linear-gradient(90deg,rgba(4,13,24,.9),rgba(8,22,38,.58) 52%,rgba(8,22,38,.16)),url("../images/cards/welcome.png") center bottom/cover no-repeat;padding:24px 0 0;overflow:visible;z-index:100;}
body:not(.has-active-league) .welcome-start-screen{bottom:35px;padding-bottom:0;}
body.has-active-league.has-bottom-ad .welcome-start-screen{bottom:calc(var(--footer-h) + 96px + env(safe-area-inset-bottom));padding-bottom:10px;}
.welcome-start-screen .welcome-start-heading{display:none;}
.welcome-start-grid{position:relative;width:100%;height:100%;margin:0 auto;display:grid;grid-template-columns:var(--welcome-left-card-width) var(--welcome-create-card-width);grid-template-rows:auto 1fr auto;grid-template-areas:"intro form" ". ." "steps steps";justify-content:center;align-items:start;column-gap:var(--welcome-card-gap);row-gap:0;padding:0 40px 0;box-sizing:border-box;border-radius:0;background:transparent;}
.welcome-start-left{display:contents;}
.welcome-start-card{box-sizing:border-box;background:#fff;text-align:center;color:#111a22;padding:19px 20px 16px;border-radius:8px;}
.welcome-start-card h2{margin:0 auto 17px;max-width:315px;font-size:1.36rem;line-height:1.08;font-weight:900;}
.welcome-start-card p{margin:0 0 17px;color:#333;font-size:.95rem;line-height:1.35;}
.welcome-start-card p:last-child{margin-bottom:0;}
.welcome-start-card--intro{grid-area:intro;min-height:292px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;background:transparent;color:#fff;text-align:left;text-shadow:1px 1px 4px rgba(0,0,0,.85);padding:16px 0 18px;border-radius:0;}
.welcome-start-card--intro h2{display:flex;align-items:center;gap:12px;width:660px;max-width:660px;margin:0 0 20px;color:#fff;font-size:1.82rem;line-height:1.08;font-weight:900;}
.welcome-headline-logo{display:inline-block;width:61px;height:61px;object-fit:contain;vertical-align:middle;margin-right:6px;}
.welcome-start-card--intro h2 span{display:block;vertical-align:middle;}
.welcome-start-card--intro p{max-width:370px;margin:0 0 13px;color:#fff;font-family:Arial,Helvetica,sans-serif;font-size:1.145rem;font-weight:700;line-height:1.35;}
.welcome-start-card--intro p:last-of-type{margin-bottom:20px;}
.mobile-copy-break{display:none;}
.welcome-role-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:530px;margin-top:4px;text-shadow:none;}
.welcome-role-note{box-sizing:border-box;padding:10px 11px;border:1px solid rgba(122,165,213,.28);border-radius:8px;background:#11253d;box-shadow:0 10px 24px rgba(0,0,0,.15);}
.welcome-role-note strong{display:block;margin-bottom:4px;color:#fff;font-size:.82rem;font-weight:900;line-height:1;}
.welcome-role-note span{display:block;color:#aac3df;font-size:calc(.76rem + 2px);font-weight:700;line-height:1.25;}
.welcome-save-note{grid-column:1/-1;margin:0;color:#c8d9ea!important;font-size:calc(.72rem + 2px)!important;font-weight:700!important;line-height:1.22!important;}
.welcome-member-help{grid-area:member;position:relative;justify-self:center;align-self:start;margin:12px 0 0;padding:0;background:transparent;color:#fff;border:0;border-radius:0;font-size:.84rem;font-weight:800;line-height:1.2;text-align:center;text-decoration:underline;text-underline-offset:2px;text-shadow:1px 1px 4px rgba(0,0,0,.85);}
.welcome-member-help:hover{background:transparent;color:#fff;}
.welcome-member-help .helper-tooltip{top:calc(100% + 8px);font-size:12px;font-weight:500;text-shadow:none;background:#fff;color:#28333d;opacity:1;}
.welcome-start-card--steps{grid-area:steps;justify-self:center;width:calc(100vw - var(--scrollbar-edge));padding:13px 42px 18px;text-align:center;background:#fff;text-shadow:none;box-shadow:0 -2px 14px rgba(16,32,46,.08);border-radius:0;transform:none;}
.welcome-start-card--steps h2{display:flex;align-items:center;justify-content:center;gap:6px;text-align:center;margin-bottom:14px;font-size:calc(1.245rem + 1px);line-height:1;transform:translateY(-2px);}
.welcome-steps-ball{display:inline-block;font-size:.95em;line-height:1;transform:translateY(-1px);}
.welcome-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:start;gap:11px;width:min(940px,calc(100vw - 84px));margin:0 auto;padding:18px 17px 14px;box-sizing:border-box;background:rgba(255,255,255,.22);border:0;border-radius:8px;box-shadow:0 0 4px rgba(14,22,34,.16);}
.welcome-flow-step{display:flex;flex-direction:column;align-items:center;gap:6px;color:#111a22;font-size:.92rem;font-weight:700;font-stretch:normal;letter-spacing:0;text-align:center;}
.welcome-flow-step img{width:27px;height:27px;object-fit:contain;opacity:.95;filter:brightness(0) saturate(100%) invert(42%) sepia(84%) saturate(794%) hue-rotate(84deg) brightness(88%) contrast(94%);transform:translateY(-2px);}
.welcome-flow-step span{font-size:calc(.92rem + 1px);font-weight:700;font-stretch:normal;letter-spacing:0;line-height:1;}
.welcome-flow-step small{display:block;max-width:164px;color:#22313e;font-size:.8425rem;font-weight:600;font-stretch:normal;letter-spacing:0;line-height:1.22;}
.welcome-flow-arrow{color:#506171;font-family:Arial Black,Arial,Helvetica,sans-serif;font-size:1.22rem;font-weight:900;line-height:1;margin-top:12px;transform:none;text-shadow:.8px 0 currentColor,0 .4px currentColor;}
.welcome-start-card ol{display:none;}
.welcome-start-card li{margin:0 0 7px;font-size:.86rem;line-height:1.25;}
.welcome-simple{text-align:center!important;margin-top:12px!important;}
.welcome-create-panel{grid-area:form;justify-self:start;box-sizing:border-box;width:100%;height:382px;margin:10px 0 0;background:#fff;border:0;border-radius:7px;padding:0;box-shadow:0 8px 24px rgba(8,20,34,.18);}
.welcome-create-panel .create-league-modal{height:100%;padding-left:10px;padding-right:10px;text-align:center;}
.welcome-create-panel .create-league-modal h2{top:18px;text-align:center;font-size:1.42rem;}
.welcome-create-panel .create-league-fields{top:49px;left:21px;right:20px;bottom:auto;text-align:center;}
.welcome-create-panel .create-league-actions{bottom:48px;}
.welcome-create-panel .create-league-sub{margin-left:auto;margin-right:auto;text-align:center;}
.welcome-create-panel .create-league-note{margin-left:auto;margin-right:auto;text-align:center;}
.welcome-create-panel .create-league-modal label{display:block;top:0;margin:9px auto;max-width:320px;}
.welcome-create-panel .create-league-modal input{display:block;width:100%;box-sizing:border-box;height:37px;margin:0;padding:8px 11px;border:1px solid #d2d6db;border-radius:4px;background:#fff;font-size:1.005rem;}
.welcome-create-panel .create-league-sub{position:absolute;left:31px;right:30px;top:269px;display:block;margin:0 auto;max-width:none;color:#44515d;font-size:.72rem;line-height:1.15;font-weight:700;text-align:center;}
.welcome-create-panel .create-league-note{top:-1px;font-size:.78rem;line-height:1.2;margin-top:12px;max-width:300px;color:#333;font-weight:500;}
.welcome-create-panel .create-league-note strong,.welcome-create-panel .create-league-note span{display:inline;text-decoration:none;}
.welcome-create-panel .create-league-note strong{top:0;margin-right:0;font-size:.82rem;}
.welcome-create-panel .create-league-actions .primary{height:42px;min-height:42px;min-width:190px;border-radius:5px;padding-top:10px;padding-bottom:12px;word-spacing:2px;}
.welcome-create-panel .create-league-actions .primary{background:#35a83f;}
.welcome-create-panel .create-league-actions .primary:hover{background:#3bb946;}
.welcome-create-panel .welcome-member-help{position:absolute;left:0;right:0;bottom:23px;justify-self:auto;margin:0;color:#1867b0;font-family:Arial,Helvetica,sans-serif;font-size:.78rem;font-weight:800;text-shadow:none;}
.welcome-create-panel .welcome-member-help:hover{background:transparent;color:#12548f;text-decoration:underline;}
.welcome-create-panel .welcome-member-help:hover .helper-tooltip,.welcome-create-panel .welcome-member-help:focus-visible .helper-tooltip{display:none!important;}
.welcome-create-panel .welcome-member-help.is-tooltip-open .helper-tooltip{display:block!important;}
body.has-active-league .welcome-start-screen{display:none!important;}
body:not(.has-active-league) .homepage-intro--details{display:none;}
.calendar-bottom-tagline{max-width:760px;margin:4px auto 12px;padding:0 20px;text-align:center;color:#667684;font-size:.88rem;font-weight:600;line-height:1.35;}
.calendar-bottom-tagline{display:none;}
body.has-active-league .calendar-bottom-tagline{display:block;}
body.has-active-league .homepage-intro--details{display:none;}
body:has(.modal-content.create-league-content) .homepage-intro--details,
body:has(.intro-copy--steps) .homepage-intro--details{display:none;}

/* SECTION 02.12 - Layout Responsive Rules */
@media (min-width:480px){header h1{font-size:1.44rem;}}
@media (min-width:900px){header{min-height:56px;}}
@media (max-width:900px) and (min-width:801px){
:root{--header-height:132px;}
body:not(.has-active-league){--header-height:88px;}
body:not(.has-active-league) .header-shell{padding:14px 0 11px;display:grid;grid-template-columns:1fr;grid-template-areas:"brand";justify-items:center;row-gap:0;}
.header-shell{padding:8px 0 6px;display:grid;grid-template-columns:1fr;grid-template-areas:"brand" "controls" "context";row-gap:4px;}
#league-title{justify-self:center;text-align:center;}
header .header-top{justify-content:center;gap:6px;max-width:100%;min-width:0;overflow:hidden;}
.context-row{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);}
.welcome-start-screen{padding:24px 0 0;overflow:hidden;}
.welcome-start-grid{width:100%;height:100%;grid-template-columns:clamp(390px,48vw,430px) clamp(350px,42vw,365px);grid-template-rows:auto 1fr auto;grid-template-areas:"intro form" ". ." "steps steps";justify-content:center;align-items:start;column-gap:clamp(2px,.45vw,6px);padding:0 18px;}
.welcome-start-left{display:contents;}
.welcome-create-panel{width:100%;margin:10px 0 0;}
}
@media (max-width:800px) and (min-width:641px){
:root{--header-height:132px;}
body:not(.has-active-league){--header-height:88px;}
body:not(.has-active-league) .header-shell{padding:14px 0 11px;display:grid;grid-template-columns:1fr;grid-template-areas:"brand";justify-items:center;row-gap:0;}
.header-shell{padding:8px 0 6px;display:grid;grid-template-columns:1fr;grid-template-areas:"brand" "controls" "context";row-gap:4px;}
#league-title{justify-self:center;text-align:center;}
header .header-top{justify-content:center;gap:6px;max-width:100%;min-width:0;overflow:hidden;}
.context-row{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);}
.welcome-start-screen{padding:24px 0 0;overflow:hidden;}
.welcome-start-grid{width:100%;height:100%;grid-template-columns:clamp(312px,48.5vw,390px) clamp(280px,43.65vw,350px);grid-template-rows:auto auto 1fr auto;grid-template-areas:"headline headline" "intro form" ". ." "steps steps";justify-content:center;align-items:start;column-gap:clamp(2px,.45vw,6px);row-gap:8px;padding:0 18px;}
.welcome-start-left{display:contents;}
.welcome-start-card--intro{display:contents;min-height:0;padding:0;}
.welcome-start-card--intro h2{grid-area:headline;justify-self:center;max-width:calc(100vw - 72px);margin:0;text-align:center;font-size:1.44rem;line-height:1.08;}
.welcome-start-card--intro h2 br:first-of-type{display:none;}
.welcome-intro-copy{grid-area:intro;align-self:start;padding:16px 0 18px;text-align:left;}
.welcome-start-card--intro p{max-width:100%;margin:0 0 14px;font-size:clamp(.9rem,2.34vw,1.145rem);line-height:1.3;}
.welcome-start-card--intro p:last-of-type{margin-bottom:18px;}
.welcome-member-help{font-size:.76rem;}
.welcome-create-panel{width:100%;height:clamp(334px,47.7vw,382px);margin:10px 0 0;}
.welcome-create-panel .create-league-modal h2{top:clamp(15px,2.25vw,18px);font-size:clamp(1.1rem,3vw,1.42rem);}
.welcome-create-panel .create-league-fields{top:clamp(44px,6.25vw,50px);left:clamp(13px,2.6vw,21px);right:clamp(13px,2.5vw,20px);}
.welcome-create-panel .create-league-modal label{max-width:320px;margin:clamp(7px,1.1vw,9px) auto;}
.welcome-create-panel .create-league-modal input{height:clamp(34px,4.65vw,37px);font-size:clamp(.9rem,2vw,1.005rem);}
.welcome-create-panel .create-league-note{margin-top:clamp(9px,1.5vw,12px);font-size:clamp(.68rem,1.7vw,.78rem);max-width:300px;}
.welcome-create-panel .create-league-actions{bottom:clamp(40px,5.6vw,45px);}
.welcome-create-panel .create-league-actions .primary{height:clamp(38px,5.25vw,42px);min-height:clamp(38px,5.25vw,42px);min-width:clamp(168px,23.75vw,190px);font-size:clamp(.9rem,2vw,1rem);}
.welcome-start-card--steps{align-self:end;width:calc(100vw - var(--scrollbar-edge));padding:12px 24px 14px;}
.welcome-flow{width:min(760px,calc(100vw - 48px));gap:8px;padding:12px 12px;}
.welcome-flow-step small{font-size:.76rem;max-width:140px;}
}
@media (max-width:640px){
:root{--header-height:130px;--footer-h:38px;--chip-h:28px;--control-font:.72rem;--content-edge:12px;--scrollbar-edge:0px;}
body:not(.has-active-league){--header-height:64px;}
header{display:block;background:var(--green-dark);color:#fff;width:100%;box-sizing:border-box;padding:0;}
header.sticky{right:var(--scrollbar-edge);width:auto;}
.header-shell{position:relative;width:calc(100% - 8px);padding:9px 0 3px;display:grid;grid-template-columns:30px minmax(0,1fr) 95px 95px;grid-template-areas:"menu brand brand brand" "league league invite teams" "view view view view" "weekly weekly status status";align-items:center;gap:0 4px;}
body:not(.has-active-league) .header-shell{padding:8px 0;}
body:not(.has-active-league) .public-subnav{height:28px;}
body:not(.has-active-league) .public-subnav a{font-size:.62rem;padding:0 8px;}
#league-title{grid-column:1 / -1;grid-row:1;font-size:calc(.98rem + 4px);text-align:center;font-weight:900;justify-self:center;max-width:100%;overflow:hidden;text-overflow:ellipsis;}
#league-title .site-brand{gap:6px;}
.brand-ball{font-size:calc(1em - 3px);transform:translate(1px,-2px);}
.brand-text{transform:none;}
header .header-top{display:contents;}
#menu-button{grid-area:menu;width:26px;min-width:26px;height:28px;min-height:28px;margin-left:0;justify-self:start;transform:translate(6px,1px);font-size:1.08rem;font-family:Arial,Helvetica,sans-serif;padding:0;z-index:1;}
.header-top .header-right{grid-area:teams;display:flex;align-items:center;justify-content:center;gap:0;width:auto;min-width:0;}
.header-top .header-right > *{order:initial;}
#invite-button{grid-area:invite;}
.view-switch{grid-area:view;grid-column:1 / -1!important;justify-self:stretch;display:block;width:100%;min-width:0;}
.view-switch-label{display:none;}
.view-switch button{padding:0 8px;border-radius:0;font-weight:700;width:100%!important;font-size:.74rem;}
.view-toggle{display:grid;grid-template-columns:1fr 1fr;width:100%;min-width:0;border-radius:5px;box-shadow:inset 0 0 0 1px var(--month-bar);}
.view-switch .view-toggle{height:27px;min-height:27px;}
.view-switch .view-toggle button{border-radius:0;}
#invite-button,.view-switch{order:initial;flex:0 1 auto;min-width:0;}
#invite-button{position:relative;justify-self:stretch;margin:0;max-width:none;font-size:.78rem;padding:0 8px;background:transparent;border-left:0;text-align:center;white-space:nowrap;}
#teams-button{position:relative;width:100%;min-width:0;font-size:.78rem;padding:0 8px;white-space:nowrap;background:transparent!important;text-align:center;}
#teams-button::before{content:none;}
#invite-button::after{content:"";position:absolute;right:-3px;top:4px;bottom:4px;width:1px;background:#5a6d7d;}
.hdr-size,#menu-button,#invite-button,.header-right > *{height:35px;min-height:35px;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;max-width:112px;}
.hdr-size,#menu-button,#invite-button,.header-right > *{height:28px;min-height:28px;max-width:none;}
.header-right::before,.view-switch::before{display:none;}
.view-switch{height:28px;min-height:28px;max-width:none;}
.view-switch,.view-toggle,.view-toggle > #personal-view,.view-toggle > #shared-view{max-width:none!important;}
.view-switch button{height:27px;min-height:27px;max-width:none;}
#view-switch,.view-switch{grid-column:1 / -1!important;margin-left:0;}
.view-personal #view-switch,.view-personal .view-switch{transform:none;}
.context-row-main{font-size:.86rem;}
.context-row-sub{font-size:.72rem;}
.context-row{display:contents;}
.header-context{display:contents;width:100%;margin-left:0;}
.context-league{grid-area:league;text-align:left;display:flex;align-items:center;height:28px;font-size:.78rem;line-height:1;transform:translateX(7px);}
.context-default{grid-column:1 / 3;grid-row:4;display:inline-flex;align-items:center;justify-content:center;gap:3px;text-align:center;padding-right:0;padding-top:2px;}
.context-user{grid-area:status;text-align:right;}
.context-view-hint{grid-column:3 / 5;grid-row:4;text-align:center;padding-left:0;padding-top:2px;}
.context-item{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.context-view-hint{justify-content:center;}
.context-view-hint{transform:none;}
.side-menu{box-sizing:border-box;width:calc(100% - 170px);min-width:200px;max-width:230px;padding:10px;}
.side-menu h2{font-size:.95rem;}
.side-menu ul li>button{padding:9px 0;font-size:.84rem;}
#create-league-button,#close-side-menu{height:27px!important;min-height:27px!important;max-height:27px!important;padding:0 8px!important;font-size:.74rem;line-height:1;}
#close-side-menu{max-width:100%;}
.side-calendars-head{font-size:.84rem;}
.logo-fixed{width:42px;height:42px;border-radius:6px;}
.header-grid{grid-template-columns:minmax(0,1fr) 42px;column-gap:8px;margin-bottom:10px;}
.logo-fixed{width:42px;height:42px;}
.title-line{font-size:calc(clamp(20px,5.6vw,23px) - .01rem);transform:translateY(1px);}
.title-subline{font-size:calc(clamp(13px,3.4vw,15px) - .01rem);transform:translateY(-1px);}
#side-help-button{width:17px;height:17px;font-size:12px;transform:translate(6px,-1px);}
#side-menu .league-open{min-height:38px;padding:3px 6px 3px;}
#league-list{transform:translateY(-6px);}
.league-row{transform:none;margin:8px 0 2px;}
.league-menu-popover{min-width:0!important;}
.league-menu-action{font-size:.75rem;padding:7px 5px 5px 7px;}
.league-menu-action:first-child{padding:7px 5px 5px 7px;}
.league-menu-action--spaced{padding:5px 5px 7px 7px;}
.league-open-name{font-size:.58rem;}
.league-open-team{font-size:.58rem;}
#side-menu .legal-link{font-size:.58rem;}
#side-menu .side-grid-toggle{border:0;text-align:left;font-family:inherit;line-height:1.1;}
#side-menu .footer-disclaimer{font-size:.62rem;padding-top:8px;}
#legal-links-container{width:max-content;max-width:100%;gap:6px 6px;}
body:not(.has-active-league) footer{height:38px;min-height:38px;padding:2px 8px;overflow:hidden;}
body:not(.has-active-league) .no-league-footer-meta{display:grid;grid-template-columns:1fr;place-content:center;justify-items:center;width:100%;height:100%;gap:2px;font-size:.56rem;line-height:1;white-space:nowrap;}
body:not(.has-active-league) .no-league-footer-links{display:flex;justify-content:center;min-width:0;max-width:100%;flex-wrap:nowrap;overflow:hidden;}
body:not(.has-active-league) .no-league-footer-links a:not(:first-child){margin-left:4px;padding-left:4px;}
body:not(.has-active-league) .no-league-footer-copy{max-width:100%;white-space:nowrap;text-align:center;}
body:not(.has-active-league) .welcome-start-screen{position:fixed;left:0;right:0;top:var(--header-height);bottom:var(--footer-h);min-height:0;padding:10px 10px 0;overflow:hidden;background-position:right bottom 260px;}
.welcome-start-grid{width:100%;height:100%;display:grid;grid-template-columns:1fr;grid-template-rows:auto auto minmax(0,1fr) auto;grid-template-areas:"headline" "copy" "form" "steps";gap:7px;margin:8px 0 0;padding:0;align-items:start;}
.welcome-start-left{display:contents;}
.welcome-start-card--intro{display:contents;min-height:0;padding:0;}
.welcome-start-card--intro h2{grid-area:headline;justify-self:center;max-width:360px;margin:0 auto;text-align:center;font-size:1.1rem;line-height:1.08;}
.welcome-start-card--intro h2 br:first-of-type{display:none;}
.welcome-intro-copy{grid-area:copy;justify-self:center;width:calc(100% - 36px);max-width:436px;display:grid;grid-template-columns:1fr;column-gap:0;padding:0;text-align:center;}
.welcome-intro-copy p:first-child{display:none;}
.welcome-start-card--intro p{max-width:none;margin:0;font-size:.78rem;line-height:1.22;}
.welcome-start-card--intro p:last-of-type{margin-bottom:0;}
.mobile-copy-break{display:inline;}
.desktop-copy-inline{display:none;}
.welcome-create-panel{align-self:start;justify-self:center;width:calc(100% - 36px);max-width:436px;height:347px;border:0;border-radius:7px;box-shadow:0 3px 12px rgba(8,20,34,.16);}
.welcome-create-panel .create-league-modal{height:100%;padding-left:10px;padding-right:10px;text-align:center;}
.welcome-create-panel .create-league-modal h2{top:13px;left:20px;right:20px;text-align:center;font-size:calc(1.42rem - 3px);}
.welcome-create-panel .create-league-fields{top:37px;left:21px;right:20px;text-align:center;}
.welcome-create-panel .create-league-modal label{display:block;top:0;margin:9px auto;max-width:320px;}
.welcome-create-panel .create-league-modal input{display:block;width:100%;box-sizing:border-box;height:37px;margin:0;padding:8px 11px;border:1px solid #d2d6db;border-radius:4px;background:#fff;font-size:1.005rem;}
.welcome-create-panel .create-league-note{top:-6px;font-size:.78rem;line-height:1.2;margin-top:12px;max-width:300px;color:#333;font-weight:500;}
.welcome-create-panel .create-league-actions{bottom:34px;}
.welcome-create-panel .create-league-actions .primary{height:40px;min-height:40px;min-width:190px;border-radius:5px;padding:8px 15px 12px;font-size:calc(1rem - 1px);}
.welcome-create-panel .welcome-member-help{bottom:13px;}
.welcome-start-card--steps{align-self:end;width:calc(100vw - var(--scrollbar-edge));padding:7px 14px 16px;}
.welcome-start-card--steps h2{margin-bottom:8px;font-size:1.12rem;transform:none;}
.welcome-flow{display:grid;grid-template-columns:1fr;gap:6px;width:100%;padding:0 4px;background:transparent;box-shadow:none;}
.welcome-flow-step{display:grid;grid-template-columns:44px 1fr;grid-template-rows:auto auto;align-items:center;column-gap:10px;row-gap:3px;padding:10px 14px;border:1px solid rgba(14,22,34,.12);border-radius:4px;text-align:left;background:rgba(255,255,255,.7);}
.welcome-flow-step img{grid-row:1 / 3;width:27px;height:27px;justify-self:center;transform:none;}
.welcome-flow-step span{font-size:.88rem;line-height:1;}
.welcome-flow-step small{max-width:none;font-size:.8rem;line-height:1.12;}
.welcome-flow-arrow{display:none;}
}
@media (max-width:640px) and (min-width:391px){
.welcome-intro-copy{transform:translateY(6px);}
.welcome-create-panel{width:404px;max-width:calc(100% - 24px);height:351px;}
.welcome-create-panel .create-league-fields{left:21px;right:20px;}
.welcome-create-panel .create-league-modal label{max-width:320px;}
.welcome-create-panel .create-league-actions{bottom:37px;}
.welcome-create-panel .welcome-member-help{bottom:18px;}
.welcome-flow{grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:6px 8px;padding:0 4px;}
.welcome-flow-step{grid-template-columns:36px minmax(0,1fr);column-gap:8px;row-gap:2px;padding:8px 10px;}
.welcome-flow-step img{width:29px;height:29px;}
.welcome-flow-step span{font-size:.82rem;}
.welcome-flow-step small{font-size:.72rem;line-height:1.1;}
.welcome-flow-step:nth-of-type(1){grid-column:1;grid-row:1;}
.welcome-flow-step:nth-of-type(2){grid-column:1;grid-row:2;}
.welcome-flow-step:nth-of-type(3){grid-column:2;grid-row:1;}
.welcome-flow-step:nth-of-type(4){grid-column:2;grid-row:2;}
}
@media (max-width:1280px){.ad-shell--rail{display:none;}}
@media (max-width:640px){body.has-bottom-ad{padding-bottom:calc(88px + env(safe-area-inset-bottom));}.ad-shell--bottom{display:none;}}
@media (max-width:1024px),(hover:none) and (pointer:coarse){:root{--scrollbar-edge:0px;}}
@media (max-width:420px){header h1{font-size:.95rem;}}
@media (max-width:390px){
body:not(.has-active-league) .welcome-start-screen{background-position:right bottom 260px;}
.welcome-start-card--intro p{font-size:calc(.78rem + 1px);}
.mobile-copy-break{display:none;}
.desktop-copy-inline{display:inline;}
.welcome-create-panel{width:calc(100% - 24px);transform:translateY(-8px);}
.welcome-create-panel .create-league-modal h2{top:10px;font-size:calc(1.42rem - 4px);}
.welcome-create-panel .create-league-fields{top:36px;}
.welcome-create-panel .create-league-modal input{height:35.5px;font-size:calc(1.005rem - 1.5px);}
.welcome-create-panel .create-league-note{top:-6px;font-size:.72rem;line-height:1.15;max-width:285px;}
.welcome-create-panel{height:345px;}
.welcome-create-panel .create-league-modal h2{transform:translateY(1px);}
.welcome-create-panel .create-league-actions{bottom:44px;}
.welcome-create-panel .create-league-actions .primary{height:39px;min-height:39px;padding-top:7.5px;padding-bottom:11.5px;font-size:1rem;}
.welcome-create-panel .welcome-member-help{bottom:23px;}
.welcome-start-card--steps{padding-top:5px;}
.welcome-start-card--steps h2{margin-bottom:6px;font-size:calc(1.12rem - 1px);}
.welcome-flow{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:start;gap:2px;width:100%;padding:2px 2px 0;}
.welcome-flow-step{display:flex;flex-direction:column;align-items:center;gap:3px;padding:0 1px;border:0;background:transparent;text-align:center;}
.welcome-flow-step img{width:20px;height:20px;transform:none;}
.welcome-flow-step span{font-size:.64rem;line-height:1;font-weight:800;}
.welcome-flow-step small{max-width:70px;font-size:.52rem;line-height:1.05;}
.welcome-flow-arrow{display:block;color:#506171;font-family:Arial Black,Arial,Helvetica,sans-serif;font-size:.72rem;font-weight:900;line-height:1;margin-top:12px;transform:none;}
}
@media (max-width:360px){
:root{--menuIcon:50px;}
.title-line{font-size:clamp(17px,5.5vw,22px);}
#league-title,#league-title *{min-width:0;}
#league-title{font-size:calc(.98rem + 4px);white-space:nowrap;overflow:visible;text-overflow:clip;min-width:0;max-width:100%;}
}
@media (prefers-reduced-motion:reduce){.league-row,.league-trash,.league-open{transition:none;}}

/* Public homepage scroll/content pass for AdSense response */
.public-home-section{display:none;}
.public-home-section-inner{width:min(1120px,calc(100vw - 72px));margin:0 auto;box-sizing:border-box;}
.public-section-kicker,
body:not(.has-active-league) .welcome-start-card--steps .public-section-kicker{margin:0 0 8px;color:#75a4dc;font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;text-shadow:none;}
.public-home-section h2{margin:0;color:#fff;font-size:1.5rem;line-height:1.15;font-weight:700;letter-spacing:0;text-align:left;text-shadow:1px 1px 4px rgba(0,0,0,.65);transform:none;}
body:not(.has-active-league) .welcome-start-card--steps h2{margin:0;color:#fff;font-size:1.5rem;line-height:1.15;font-weight:700;letter-spacing:0;text-align:left;text-shadow:1px 1px 4px rgba(0,0,0,.65);transform:none;}
.public-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:18px;}
.public-feature-grid article{display:grid;grid-template-columns:58px minmax(0,1fr);align-items:start;column-gap:15px;box-sizing:border-box;min-height:138px;padding:18px 18px 16px;border:1px solid rgba(122,165,213,.24);border-radius:8px;background:#11253d;box-shadow:0 14px 32px rgba(0,0,0,.18);}
.public-feature-icon{display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;margin:0;border-radius:50%;background:rgba(117,164,220,.16);box-shadow:inset 0 0 0 1px rgba(122,165,213,.18);}
.public-feature-icon svg{width:31px;height:31px;fill:none;stroke:#1ead3a;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;}
.public-feature-grid h3{margin:0 0 8px;color:#fff;font-size:1rem;line-height:1.1;}
.public-feature-grid p,.public-home-copy p{margin:0;color:#aac3df;font-size:.9rem;font-weight:600;line-height:1.45;}
.public-feature-list{margin:0;padding:0;list-style:none;color:#aac3df;font-size:.9rem;font-weight:600;line-height:1.38;}
.public-feature-list li{position:relative;margin:0 0 5px;padding-left:14px;}
.public-feature-list li::before{content:"";position:absolute;left:0;top:.48em;width:5px;height:5px;border-radius:50%;background:#75a4dc;}
.public-feature-list li:last-child{margin-bottom:0;}
.public-home-copy p+p{margin-top:12px;}
.public-home-copy{padding-top:30px;}
.public-home-split{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(320px,1.1fr);gap:40px;align-items:start;}
body:not(.has-active-league) .welcome-start-screen{position:relative;left:auto;right:auto;top:auto;bottom:auto;min-height:calc(100vh - var(--header-height));margin-top:var(--header-height);padding:12px 0 0;overflow:visible;background-attachment:scroll;background-position:center top;}
body:not(.has-active-league) .welcome-start-grid{height:auto;min-height:calc(100vh - var(--header-height) - 35px);grid-template-rows:auto 0 auto;padding-bottom:0;}
body:not(.has-active-league) .welcome-start-card--steps{width:100%;background:rgba(255,255,255,.96);}
body:not(.has-active-league) .public-home-section{display:block;padding:56px 0;background:rgba(5,15,27,.74);}
body:not(.has-active-league) .public-home-section--why{padding-top:50px;padding-bottom:70px;background:rgba(4,12,22,.82);}
body:not(.has-active-league) footer{position:static;}
@media (max-width:900px){.public-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.public-home-split{grid-template-columns:1fr;gap:18px;}.public-home-copy{padding-top:0;}}
@media (max-width:640px){body:not(.has-active-league) .public-subnav{overflow-x:auto;justify-content:flex-start;padding:0 8px;}body:not(.has-active-league) .public-subnav a,body:not(.has-active-league) .public-grid-toggle{flex:0 0 auto;}.public-home-section-inner{width:calc(100vw - 36px);}.public-feature-grid{grid-template-columns:1fr;gap:10px}.public-feature-grid article{min-height:0;padding:14px}.public-home-section h2{font-size:1.25rem}body:not(.has-active-league) .public-home-section{padding:34px 0;}}

/* Keep public homepage content on one shared grid width. */
body:not(.has-active-league){--public-page-width:min(1400px,calc(100vw - 72px));}
body:not(.has-active-league) .public-page-grid{width:var(--public-page-width);max-width:var(--public-page-width);margin-left:auto;margin-right:auto;box-sizing:border-box;}
body:not(.has-active-league) .welcome-start-grid,
body:not(.has-active-league) .public-home-section-inner{width:100%;max-width:100%;margin-left:0;margin-right:0;box-sizing:border-box;}
body:not(.has-active-league) .welcome-start-grid{padding-left:0;padding-right:0;}
body:not(.has-active-league) .welcome-start-card--steps{width:100%;padding-left:42px;padding-right:42px;}
body:not(.has-active-league) .welcome-flow{width:100%;max-width:100%;}
@media (max-width:900px){body:not(.has-active-league){--public-page-width:calc(100vw - 48px);}}
@media (max-width:640px){body:not(.has-active-league){--public-page-width:calc(100vw - 20px);}body:not(.has-active-league) .welcome-start-card--steps{padding-left:14px;padding-right:14px;}}

/* Public homepage visual consolidation pass */
body:not(.has-active-league){--welcome-left-card-width:530px;--welcome-create-card-width:365px;--welcome-card-gap:72px;--public-page-width:min(calc(var(--welcome-left-card-width) + var(--welcome-card-gap) + var(--welcome-create-card-width)),calc(100vw - 72px));--scrollbar-edge:17px;background:var(--green-dark);padding-bottom:0;}
body:not(.has-active-league) .welcome-start-screen{background:linear-gradient(90deg,rgba(4,13,24,.96),rgba(8,22,38,.78) 52%,rgba(8,22,38,.44)),url("../images/cards/welcome.png") center calc(100% + 200px)/cover fixed no-repeat;}
body:not(.has-active-league) .welcome-start-card--intro h2,
body:not(.has-active-league) .welcome-start-card--intro p{width:100%;max-width:none;}
body:not(.has-active-league) .welcome-role-notes{width:100%;max-width:none;}
body:not(.has-active-league) .welcome-start-card--intro h2{font-size:calc(1.65rem + 1px);}
@media (min-width:901px){body:not(.has-active-league) .welcome-start-card--intro h2{display:flex;width:610px;max-width:610px;padding:5px 0;margin:-5px 0 15px;box-sizing:content-box;}}
body:not(.has-active-league) .public-page-grid{padding-bottom:0;}
body:not(.has-active-league) .welcome-start-card--steps{width:100%;margin-left:0;margin-right:0;background:transparent;border:0;box-shadow:none;border-radius:0;color:#fff;text-shadow:1px 1px 4px rgba(0,0,0,.75);padding:0 0 46px;text-align:left;}
body:not(.has-active-league) .welcome-start-card--steps .public-section-kicker,
body:not(.has-active-league) .welcome-start-card--steps h2{display:block;width:100%;max-width:none;}
body:not(.has-active-league) .welcome-flow{min-height:128px;margin-top:13px;align-items:stretch;background:#11253d;border:1px solid rgba(122,165,213,.24);box-shadow:0 14px 32px rgba(0,0,0,.18);border-radius:8px;padding:18px 18px 16px;}
body:not(.has-active-league) .welcome-flow-step{justify-content:center;color:#fff;text-shadow:none;}
body:not(.has-active-league) .welcome-flow-arrow{align-self:center;}
body:not(.has-active-league) .welcome-flow-step span{color:#fff;}
body:not(.has-active-league) .welcome-flow-step small{color:#aac3df;}
body:not(.has-active-league) .welcome-flow-arrow{color:#75a4dc;text-shadow:none;}
body:not(.has-active-league) .public-home-section{background:transparent;padding:46px 0;}
body:not(.has-active-league) .public-home-section--why{background:transparent;padding-top:36px;padding-bottom:56px;}
body:not(.has-active-league) .public-home-section-inner{width:100%;max-width:100%;margin-left:0;margin-right:0;}
body:not(.has-active-league) .public-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:13px;}
body:not(.has-active-league) .public-feature-grid article{min-height:128px;}
body:not(.has-active-league) .public-home-split{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
body:not(.has-active-league) .public-home-copy p{font-size:1rem;line-height:1.42;}
body:not(.has-active-league) .welcome-role-note strong,
body:not(.has-active-league) .welcome-role-note span,
body:not(.has-active-league) .welcome-member-help,
body:not(.has-active-league) .welcome-flow-step span,
body:not(.has-active-league) .welcome-flow-step small,
body:not(.has-active-league) .public-feature-grid h3,
body:not(.has-active-league) .public-feature-list,
body:not(.has-active-league) .public-home-copy p{font-family:Arial,Helvetica,sans-serif;font-weight:700;letter-spacing:0;}
body:not(.has-active-league) .welcome-role-note strong,
body:not(.has-active-league) .welcome-member-help,
body:not(.has-active-league) .public-feature-grid h3{line-height:1.15;}
body:not(.has-active-league) .welcome-role-note span,
body:not(.has-active-league) .welcome-flow-step small,
body:not(.has-active-league) .public-feature-list,
body:not(.has-active-league) .public-home-copy p{line-height:1.35;}
body:not(.has-active-league) footer{height:80px;min-height:80px;align-items:flex-start;padding:0 clamp(8px,2vw,24px);overflow:hidden;}
body:not(.has-active-league) .no-league-footer-meta{position:relative;display:block;width:min(760px,100%);height:100%;}
body:not(.has-active-league) .no-league-footer-copy{text-align:center;white-space:nowrap;}
body:not(.has-active-league) .no-league-footer-links{position:absolute;top:12px;left:50%;transform:translateX(-50%);}
body:not(.has-active-league) .no-league-footer-copy{position:absolute;top:35px;left:50%;transform:translateX(-50%);}
@media (min-width:901px){body:not(.has-active-league) .welcome-start-card--intro,body:not(.has-active-league) .welcome-create-panel{transform:translateY(1px);}body:not(.has-active-league) .welcome-create-panel .create-league-modal h2{top:18px;}body:not(.has-active-league) .welcome-create-panel .create-league-fields{top:53px;bottom:auto;}body:not(.has-active-league) .welcome-create-panel .create-league-sub{top:264px;}body:not(.has-active-league) .welcome-create-panel .create-league-actions{left:31px;right:30px;bottom:34px;}body:not(.has-active-league) .welcome-role-note:first-child span{font-size:calc(.76rem + 1px);transform:translateY(1px);}}
@media (min-width:901px){body:not(.has-active-league) .welcome-create-panel .create-league-modal input{height:39px;padding-left:13px;padding-right:13px;}body:not(.has-active-league) .welcome-create-panel .create-league-modal label{margin:8px auto;}body:not(.has-active-league) .welcome-create-panel .create-league-sub{font-size:calc(.72rem + 1px);line-height:1.18;margin-bottom:9px;}}
@media (max-width:900px){body:not(.has-active-league){--public-page-width:calc(100vw - 48px);}}
@media (max-width:1024px),(hover:none) and (pointer:coarse){body:not(.has-active-league){--scrollbar-edge:0px;}}
@media (max-width:640px){body:not(.has-active-league){--public-page-width:calc(100vw - 20px);}body:not(.has-active-league) .welcome-start-card--steps{padding:0 0 20px;}body:not(.has-active-league) .welcome-flow{padding:8px 8px 7px;}body:not(.has-active-league) .public-feature-grid{grid-template-columns:1fr;}}
