/* One responsive banner layout, overriding retired page-specific geometry. */
:root{--xw-page-gutter:20px;--xw-banner-height:160px}
html body .home-content,html body .settings-content,html body.stats-final .screen,html body.sessions-journal .screen,html body.session-page .screen,html body.competition-page .screen,html.practice-page body .practice-screen{padding-inline:var(--xw-page-gutter)!important;box-sizing:border-box;min-width:0}
html body :is(.home-photo-banner,.sessions-photo-banner,.session-photo-banner,.competition-photo-banner,.stats-photo-banner,.more-photo-banner,.practice-setup-banner){position:relative!important;isolation:isolate;display:flex!important;align-items:flex-end!important;justify-content:flex-start!important;box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;min-height:var(--xw-banner-height)!important;height:auto!important;aspect-ratio:auto!important;overflow:hidden!important;border-radius:12px!important;border:0!important;background:#27282b!important;margin:0 0 14px!important;padding:18px!important;flex-shrink:0}
html body :is(.home-photo-banner,.sessions-photo-banner,.session-photo-banner,.competition-photo-banner,.stats-photo-banner,.more-photo-banner,.practice-setup-banner)>img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;object-position:center 52%!important;filter:brightness(1.18) contrast(.88) saturate(1.05)!important;opacity:1!important;z-index:-2!important}
html body :is(.home-photo-banner,.sessions-photo-banner,.session-photo-banner,.competition-photo-banner,.stats-photo-banner,.more-photo-banner,.practice-setup-banner)::before{content:""!important;position:absolute!important;inset:0!important;z-index:-1!important;pointer-events:none;background:linear-gradient(0deg,rgba(0,0,0,.32),transparent 68%)!important}
html body :is(.home-photo-banner,.sessions-photo-banner,.session-photo-banner,.competition-photo-banner,.stats-photo-banner,.more-photo-banner,.practice-setup-banner)::after{content:none!important}
html body :is(.home-photo-banner,.sessions-photo-banner,.session-photo-banner,.competition-photo-banner,.stats-photo-banner,.more-photo-banner,.practice-setup-banner) :is(h1,h2,p[role=heading]){position:relative!important;inset:auto!important;transform:none!important;box-sizing:border-box;min-width:0;width:auto!important;max-width:100%!important;margin:0!important;padding:0!important;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;font-size:clamp(1.75rem,7.5vw,2rem)!important;font-weight:800!important;line-height:1.08!important;letter-spacing:-.7px!important;white-space:normal!important;overflow-wrap:normal;color:#fff!important;text-align:left!important;text-shadow:0 1px 4px #000b!important}
html body :is(.home-photo-banner,.sessions-photo-banner,.session-photo-banner,.competition-photo-banner,.stats-photo-banner,.more-photo-banner,.practice-setup-banner)>div{min-width:0;max-width:100%}
html body :is(.home-photo-banner,.sessions-photo-banner,.session-photo-banner,.competition-photo-banner,.stats-photo-banner,.more-photo-banner,.practice-setup-banner)>img[src*="home-lane-crimson"]{filter:brightness(1.35) contrast(.9) saturate(.9)!important}
html body :is(.home-photo-banner,.sessions-photo-banner,.session-photo-banner,.competition-photo-banner,.stats-photo-banner,.more-photo-banner,.practice-setup-banner)>img[src*="competition-lanes"]{filter:brightness(1.04) contrast(.92) saturate(1.02)!important}
html body :is(.home-photo-banner,.sessions-photo-banner,.session-photo-banner,.competition-photo-banner,.stats-photo-banner,.more-photo-banner,.practice-setup-banner)>img[src*="score-sheet"]{object-position:65% center!important;filter:brightness(1.3) contrast(.83) saturate(1.02)!important}
html body .profile-preferences h2,html body #appearance-message{text-align:center}
html body .profile-preferences .appearance-options{width:100%;margin-inline:auto}
html body .average-card h1{text-transform:none}
@media(min-width:700px){:root{--xw-page-gutter:24px;--xw-banner-height:180px}}
@media(max-width:359px){:root{--xw-page-gutter:16px}html body :is(.home-photo-banner,.sessions-photo-banner,.session-photo-banner,.competition-photo-banner,.stats-photo-banner,.more-photo-banner,.practice-setup-banner){padding:16px!important}}

html body :is(.home-photo-banner,.sessions-photo-banner)>img{filter:brightness(1.32) contrast(.82) saturate(1.08)!important}
