/* Ballinahinch fundraiser: real text and responsive layout inspired by the club poster. */
#mainContent .current-picks-overview { background:#12243d; border:1px solid #425371; padding:24px; margin-bottom:14px; }
.round-summary { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.round-summary h2 { font-size:32px; color:#fff2dc; margin:6px 0 0; }
.round-state { color:#f3c778; background:#d6a94715; border:1px solid #9b7b43; border-radius:30px; padding:9px 15px; font-size:12px; }
.round-progress { color:#bdcbe0; line-height:1.6; font-size:14px; margin:16px 0 20px; }
.entry-overview-link { display:flex; flex-direction:column; gap:9px; padding:16px; border:1px solid #425572; border-radius:9px; text-decoration:none; background:#182e4a; }
.entry-overview-link:hover { border-color:#efb34b; }
.entry-overview-link strong { color:#fff2df; font-size:20px; }
.entry-overview-link small { color:#b9c9df; font-size:12px; }
.player-account { border:1px solid #334660; border-radius:10px; background:#102039; margin:0 0 24px; padding:14px 18px; }
.player-account summary,.entry-edit summary,.previous-picks summary { color:#c2cfe1; cursor:pointer; font-size:13px; padding:5px 0; }
.player-account>div { margin:14px 0 0 !important; background:transparent !important; flex-wrap:wrap; gap:16px; padding:0 !important; }
.player-account>div>div { min-width:0; flex-wrap:wrap; }
#userEmailDisplay { overflow-wrap:anywhere; }
#mainContent .entry-card { border:1px solid #384d6b; border-radius:14px; background:#102039; padding:22px; margin:0 0 22px; scroll-margin-top:20px; }
.entry-card-heading { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:18px; }
.entry-card-heading h3 { color:#f8ebd5; font-size:19px; margin:0; overflow-wrap:anywhere; }
#mainContent .selected-team-banner { background:#1b2d45; border-left-color:#efb34b; margin-bottom:12px; padding:16px 18px; }
#mainContent .selected-team-banner strong { color:#fff0d4; font-size:28px; }
#mainContent .selected-team-label { color:#d6b67c; }
.entry-save-status { color:#b9d9c2; font-size:12px; }
.entry-edit { margin:12px 0; border-bottom:1px solid #34445b; padding-bottom:12px; }
.entry-edit[open]>h3 { margin-top:16px; }
.entry-edit[open]>p { margin-top:0 !important; }
.previous-picks { margin:8px 0 12px; }
#mainContent .pick-section { background:transparent; padding:0; border:0; }
#fixturesSection { background:#102039 !important; border:1px solid #344762 !important; margin-top:24px; }
#fixturesHeading { cursor:pointer; font-size:15px !important; margin:0 !important; }
#fixturesSection[open] #fixturesHeading { margin-bottom:16px !important; }
@media(max-width:480px) { #mainContent .entry-card { padding:16px; } .entry-card-heading { align-items:flex-start; } .entry-card-heading h3 { font-size:17px; } #mainContent .current-picks-overview { padding:18px; } }
.team-picker-heading { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-top:22px; }
.team-picker-kicker { color:#e4b86c; font-size:11px; font-weight:700; letter-spacing:2px; }
.team-picker-heading h4 { font-size:26px; color:#fff2dd; margin:6px 0 0; }
.team-picker-count { color:#b7c7dd; font-size:12px; padding:8px 12px; border:1px solid #42516b; border-radius:30px; white-space:nowrap; }
.team-picker-help,.team-picker-empty { color:#acbdd4; font-size:13px; line-height:1.7; margin:12px 0 20px; }
.team-selector.match-card-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.match-card-grid .team-btn { display:flex; flex-direction:column; align-items:stretch; text-align:left; padding:18px; min-height:196px; border:1px solid #3b4e6a; border-radius:12px; background:linear-gradient(145deg,#1a2d49,#122139); color:#e9edf5; position:relative; overflow:hidden; white-space:normal; }
.match-card-grid .team-btn::before { content:''; position:absolute; inset:0 auto 0 0; width:4px; background:var(--club-color,#526b8d); }
.team-card-top { display:flex; align-items:center; gap:10px; margin-bottom:15px; }
.team-monogram { display:flex; align-items:center; justify-content:center; width:40px; height:40px; border:1px solid #ffffff35; border-radius:11px; background:var(--club-color,#304660); color:white; font-size:11px; font-weight:700; letter-spacing:1px; text-shadow:0 1px 3px #000; }
.team-venue { color:#afbed2; font-size:11px; }
.team-choice-check { margin-left:auto; display:flex; align-items:center; justify-content:center; border:1px solid #5a6b82; border-radius:50%; width:26px; height:26px; font-size:17px; color:#bdcbe0; }
.team-card-name { color:#fff5e5; font-size:18px; line-height:1.3; overflow-wrap:anywhere; }
.team-card-opponent { color:#b0bfd3; font-size:12px; line-height:1.5; margin:6px 0 15px; }
.team-card-action { border-top:1px solid #ffffff15; padding-top:12px; margin-top:auto; color:#c8d6e8; font-size:11px; font-weight:600; }
.match-card-grid .team-btn:hover:not(:disabled) { background:#253e5d; border-color:#deb15f; transform:translateY(-2px); }
.match-card-grid .team-btn.selected { background:linear-gradient(145deg,#3c3525,#242b30); border:2px solid #efb34b; padding:17px; box-shadow:0 0 0 2px #efb34b15; }
.match-card-grid .team-btn.selected::before { background:#efb34b; }
.match-card-grid .selected .team-choice-check { background:#efb34b; border-color:#efb34b; color:#162137; }
.match-card-grid .selected .team-card-action { color:#f6c56f; }
.match-card-grid .team-btn:focus-visible { outline:3px solid #fff3df; outline-offset:3px; }
@media(max-width:850px) { .team-selector.match-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:480px) { .team-selector.match-card-grid { grid-template-columns:1fr; } .team-picker-heading { align-items:flex-start; flex-direction:column; gap:10px; } .match-card-grid .team-btn { min-height:180px; } }
@media(prefers-reduced-motion:reduce) { .match-card-grid .team-btn { transition:none; } .match-card-grid .team-btn:hover:not(:disabled) { transform:none; } }
body { background:#091426; }
.club-header { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:24px 0; }
.club-brand { display:flex; align-items:center; gap:14px; color:#fff5e4; text-decoration:none; }
.club-brand img { width:48px; height:50px; object-fit:contain; background:#fff; border-radius:5px; padding:2px; }
.club-brand strong { display:block; font-size:18px; letter-spacing:.2px; }
.club-brand small { display:block; color:#a9b6cd; margin-top:4px; font-size:12px; }
.club-nav-link { color:#f8d38e; text-decoration:none; font-size:13px; font-weight:600; border:1px solid #48516a; border-radius:30px; padding:12px 18px; white-space:nowrap; }
.club-nav-link:hover { border-color:#efb34b; background:#182a45; }
.club-landing { overflow:hidden; border:1px solid #354768; border-radius:20px; margin:12px auto 20px; background:#101f39; }
.club-hero-main { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(250px,1fr); align-items:center; gap:48px; padding:58px 48px 46px; background:radial-gradient(ellipse at 0 0,#2b4672 0,transparent 65%),linear-gradient(120deg,#162b4b,#0f1d35); }
.club-eyebrow { display:flex; align-items:center; gap:10px; color:#edbf71; font-size:11px; font-weight:700; letter-spacing:2.5px; margin:0 0 24px; }
.club-eyebrow>span { width:7px; height:7px; border-radius:50%; background:#efb34b; }
#clubLandingTitle { font-family:Impact,'Arial Narrow',sans-serif; font-size:clamp(54px,7vw,92px); font-weight:400; letter-spacing:1px; line-height:1.02; color:#fff3df; margin:0 0 22px; }
#clubLandingTitle span { color:#f5b13e; }
.club-hero-intro { color:#fff3df; font-size:21px; line-height:1.5; margin:0 0 16px; }
.club-hero-description { color:#bcc8dc; font-size:14px; line-height:1.8; max-width:440px; }
.club-actions { display:flex; align-items:center; flex-wrap:wrap; gap:22px; margin-top:26px; }
.club-primary { display:flex; align-items:center; justify-content:space-between; gap:30px; padding:16px 22px; border-radius:7px; background:#f5b13e; color:#101b2d; font-size:14px; font-weight:700; text-decoration:none; }
.club-primary:hover { background:#ffd180; }
.club-secondary { color:#f8e5c5; font-size:13px; text-decoration:none; padding:12px 0; }
.club-entry-note { color:#9fadc4; font-size:11px; line-height:1.7; margin:18px 0 0; }
.club-prize-card { text-align:center; border:1px solid #9a793f; border-radius:14px; padding:28px 24px 0; background:radial-gradient(ellipse at top,#304364,#15243c 70%); box-shadow:0 20px 40px #0003; position:relative; }
.club-prize-top { color:#dfc799; font-size:10px; letter-spacing:2px; line-height:1.6; }
.club-trophy { width:72px; height:72px; color:#f5b13e; margin-top:24px; }
.club-prize-amount { color:#fff2d9; font-size:clamp(66px,7vw,94px); font-weight:600; letter-spacing:-5px; line-height:1.2; }
.club-prize-caption { color:#f5b13e; letter-spacing:5px; font-size:12px; margin:8px 0 28px; }
.club-ticket { border-top:1px dashed #8c7855; margin:0 -24px; padding:23px; display:flex; align-items:center; justify-content:center; gap:14px; color:#f4e6ca; background:#0c182960; border-radius:0 0 14px 14px; text-align:left; }
.club-ticket>strong { font-size:36px; color:#f5b13e; }
.club-ticket>span { font-size:13px; line-height:1.6; }
.club-ticket small { color:#a9b6c9; font-size:10px; }
.club-support { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:8px; background:#efb34b; color:#162137; padding:16px 20px; font-size:12px; }
.club-support-dot { width:6px; height:6px; border-radius:50%; background:#162137; margin-right:4px; }
.club-how { padding:32px 40px 36px; }
.club-how-heading .club-eyebrow { margin-bottom:9px; font-size:10px; }
.club-how-heading h2 { color:#fff3df; font-size:24px; letter-spacing:-.4px; }
.club-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); padding:0; margin:28px 0 0; list-style:none; gap:26px; }
.club-step-number { color:#d7a754; font-size:12px; letter-spacing:2px; display:block; margin-bottom:14px; }
.club-steps h3 { color:#f5ead7; font-size:15px; margin-bottom:9px; }
.club-steps p { color:#aab9d0; font-size:12px; line-height:1.8; margin:0; }
.club-rules { color:#aab9d0; font-size:13px; line-height:1.8; padding:12px 0; }
.club-rules summary { cursor:pointer; color:#d5dfec; }
.club-primary:focus-visible,.club-secondary:focus-visible,.club-nav-link:focus-visible { outline:3px solid #fff3df; outline-offset:4px; }
body:has(#mainContent[style*="display: block"]) .club-landing { display:none; }
@media(max-width:760px) { .club-hero-main { grid-template-columns:1fr; gap:30px; padding:32px 24px; } #clubLandingTitle { font-size:clamp(52px,11vw,80px); } .club-prize-card { max-width:400px; width:100%; justify-self:center; } .club-steps { grid-template-columns:1fr 1fr; gap:24px; } .club-how { padding:28px 24px; } .club-brand strong { font-size:14px; } .club-brand small { font-size:10px; } .club-nav-link { font-size:11px; padding:10px 12px; } .club-header { gap:12px; } .club-brand { gap:9px; } .club-brand img { width:38px; height:40px; } }
@media(prefers-reduced-motion:no-preference) { html { scroll-behavior:smooth; } }
