.ud-club-hub,
.ud-club-discovery,
.ud-club-detail {
    --ch-ink: #17202a;
    --ch-muted: #66717d;
    --ch-line: #dfe4e8;
    --ch-soft: #f4f6f7;
    --ch-card: #fff;
    --ch-accent: #d71920;
    --ch-accent-dark: #a90f14;
    --ch-green: #16845b;
}

.ud-club-hub { color: var(--ch-ink); max-width: 1440px; margin: 0 auto; }
.ud-club-section-nav { display: flex; gap: 2px; overflow-x: auto; margin: 0 0 12px; padding: 4px; border: 1px solid var(--ch-line); border-radius: 9px; background: #eef1f3; scrollbar-width: none; }
.ud-club-section-nav::-webkit-scrollbar { display: none; }
.ud-club-section-nav a { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 7px; min-height: 44px; padding: 7px 13px; border-radius: 6px; color: #3e4852; font-size: 13px; font-weight: 750; text-decoration: none; white-space: nowrap; }
.ud-club-section-nav a:hover { color: #14191e; background: rgba(255,255,255,.7); }
.ud-club-section-nav a.is-active { color: #fff; background: #20272e; box-shadow: 0 1px 3px rgba(0,0,0,.13); }
.ud-club-section-nav a span { display: grid; place-items: center; width: 18px; height: 18px; font-size: 11px; font-weight: 900; }

.ud-ch-head { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px 22px; padding: 2px 2px 12px; border-bottom: 1px solid var(--ch-line); }
.ud-ch-head > div:first-child { flex: 1 1 560px; }
.ud-ch-kicker, .ud-ch-panel > header span { display: block; color: var(--ch-accent); font-size: 10px; font-weight: 900; letter-spacing: .14em; }
.ud-ch-head h1 { margin: 3px 0 2px; font-size: clamp(25px, 2.5vw, 34px); line-height: 1.05; letter-spacing: -.035em; }
.ud-ch-head p { max-width: 780px; margin: 0; color: #596570; font-size: 13px; line-height: 1.35; }
.ud-ch-head-actions { display: flex; flex: 1 1 295px; flex-wrap: wrap; align-items: flex-start; justify-content: flex-end; gap: 8px; max-width: 100%; padding-top: 4px; }
.ud-ch-head-actions a { min-height: 44px; padding: 10px 14px; border: 1px solid var(--ch-line); border-radius: 6px; background: #fff; color: var(--ch-ink); font-size: 12px; font-weight: 800; text-decoration: none; white-space: nowrap; }
.ud-ch-head-actions a.is-primary { border-color: #b20f16; background: #b20f16; color: #fff; }
.ud-ch-head-actions a:hover { border-color: #aeb6bd; }
.ud-ch-head-actions a.is-primary:hover { background: var(--ch-accent-dark); }

.ud-ch-notice { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 14px; margin-top: 14px; padding: 10px 13px; border: 1px solid #f0d48c; border-radius: 7px; background: #fff8df; font-size: 12px; }
.ud-ch-notice strong { color: #6b4c00; }
.ud-ch-notice span { color: #6e6550; }
.ud-ch-notice a { color: #704f00; font-weight: 850; text-decoration: none; }

.ud-ch-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 10px 0 12px; border: 1px solid var(--ch-line); border-radius: 8px; background: var(--ch-card); }
.ud-ch-metrics article { min-width: 0; padding: 13px 16px; border-right: 1px solid var(--ch-line); }
.ud-ch-metrics article:last-child { border: 0; }
.ud-ch-metrics span { display: block; color: var(--ch-muted); font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.ud-ch-metrics strong { display: block; margin: 3px 0 1px; font-size: 25px; line-height: 1; }
.ud-ch-metrics small { display: block; overflow: hidden; color: #6c7680; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }

.ud-ch-onboarding { display: grid; grid-template-columns: 1.1fr .9fr; gap: 22px; padding: 24px; border: 1px solid var(--ch-line); border-radius: 9px; background: #fff; }
.ud-ch-onboarding-copy { display: flex; gap: 16px; align-items: flex-start; }
.ud-ch-onboarding-copy > span { display: grid; flex: 0 0 48px; place-items: center; width: 48px; height: 48px; border-radius: 50%; background: #fee9e9; color: var(--ch-accent); font-size: 25px; }
.ud-ch-onboarding-copy strong { display: block; margin: 2px 0 6px; font-size: 21px; }
.ud-ch-onboarding-copy p { margin: 0; color: var(--ch-muted); line-height: 1.55; }
.ud-ch-onboarding ol { grid-row: span 2; margin: 0; padding: 0; list-style: none; }
.ud-ch-onboarding li { display: flex; gap: 11px; padding: 10px 0; border-bottom: 1px solid var(--ch-line); }
.ud-ch-onboarding li:last-child { border: 0; }
.ud-ch-onboarding li > b { display: grid; flex: 0 0 26px; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: #252d34; color: #fff; font-size: 11px; }
.ud-ch-onboarding li strong, .ud-ch-onboarding li small { display: block; }
.ud-ch-onboarding li small { margin-top: 2px; color: var(--ch-muted); }
.ud-ch-large-action { display: grid; grid-template-columns: 1fr auto; align-items: center; max-width: 440px; padding: 12px 14px; border-radius: 7px; background: #b20f16; color: #fff; text-decoration: none; }
.ud-ch-large-action span, .ud-ch-large-action small { display: block; }
.ud-ch-large-action span { font-weight: 850; }
.ud-ch-large-action small { opacity: 1; }
.ud-ch-large-action b { grid-column: 2; grid-row: 1 / span 2; font-size: 21px; }

.ud-ch-dashboard { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(310px, .75fr); gap: 15px; align-items: start; }
.ud-ch-dashboard > main, .ud-ch-dashboard > aside { display: grid; gap: 15px; min-width: 0; }
.ud-ch-panel { scroll-margin-top: 20px; border: 1px solid var(--ch-line); border-radius: 8px; background: var(--ch-card); overflow: hidden; }
.ud-ch-panel > header { display: flex; justify-content: space-between; gap: 15px; align-items: flex-end; min-height: 62px; padding: 12px 15px 11px; border-bottom: 1px solid var(--ch-line); background: #fbfcfc; }
.ud-ch-panel > header h2 { margin: 3px 0 0; font-size: 17px; line-height: 1.2; }
.ud-ch-panel > header > a { min-width:44px; min-height:44px; display:inline-flex; align-items:center; justify-content:center; padding-inline:12px; color: #4b5660; font-size: 11px; font-weight: 800; text-decoration: none; }
.ud-ch-panel > header > a:hover { color: var(--ch-accent); }
.ud-ch-empty { padding: 22px 16px; text-align: center; }
.ud-ch-empty strong, .ud-ch-empty span { display: block; }
.ud-ch-empty strong { font-size: 13px; }
.ud-ch-empty span { margin-top: 4px; color: var(--ch-muted); font-size: 12px; line-height: 1.45; }

.ud-ch-tasks { margin-top: 10px; }
.ud-ch-tasks > header { min-height: 52px; padding-block: 9px; }
.ud-ch-tasks > header > strong { color: var(--ch-accent); font-size: 11px; }
.ud-ch-task-list article { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 10px 14px; border-bottom: 1px solid var(--ch-line); }
.ud-ch-task-list article:last-child { border-bottom: 0; }
.ud-ch-task-list article.is-unread { box-shadow: inset 3px 0 var(--ch-accent); }
.ud-ch-task-list article strong, .ud-ch-task-list article span { display: block; }
.ud-ch-task-list article strong { font-size: 12px; }
.ud-ch-task-list article span { margin-top: 2px; color: var(--ch-muted); font-size: 10px; line-height: 1.35; }
.ud-ch-task-list form { margin: 0; }
.ud-ch-task-list button { min-height: 40px; padding: 8px 12px; border: 0; border-radius: 5px; background: #20272e; color: #fff; font: inherit; font-size: 10px; font-weight: 850; cursor: pointer; }

.ud-ch-news-list > a { display: grid; grid-template-columns: 74px 1fr auto; gap: 13px; align-items: center; min-height: 84px; padding: 12px 15px; border-bottom: 1px solid var(--ch-line); color: var(--ch-ink); text-decoration: none; }
.ud-ch-news-list > a:last-child { border: 0; }
.ud-ch-news-list > a:hover { background: #fafbfb; }
.ud-ch-news-list > a.is-unread { box-shadow: inset 3px 0 var(--ch-accent); background: #fffafa; }
.ud-ch-news-list time { color: var(--ch-muted); font-size: 11px; font-weight: 750; }
.ud-ch-news-list div { min-width: 0; }
.ud-ch-news-list div span { color: var(--ch-accent); font-size: 9px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.ud-ch-news-list div strong { display: block; margin: 2px 0 3px; font-size: 13px; }
.ud-ch-news-list p { overflow: hidden; margin: 0; color: var(--ch-muted); font-size: 11px; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.ud-ch-news-list > a > b { padding: 3px 7px; border-radius: 99px; background: var(--ch-accent); color: #fff; font-size: 9px; text-transform: uppercase; }

.ud-ch-club-list > article { padding: 16px; border-bottom: 1px solid var(--ch-line); }
.ud-ch-club-list > article:last-child { border: 0; }
.ud-ch-club-title { display: flex; justify-content: space-between; gap: 15px; }
.ud-ch-club-title span { color: var(--ch-muted); font-size: 9px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.ud-ch-club-title h3 { margin: 3px 0 1px; font-size: 19px; }
.ud-ch-club-title small { color: var(--ch-green); font-size: 11px; font-weight: 750; }
.ud-ch-club-title a, .ud-ch-team-actions a { min-height:44px; display:inline-flex; align-items:center; justify-content: center; align-self: flex-start; padding: 6px 9px; border: 1px solid var(--ch-line); border-radius: 5px; color: #46515b; font-size: 10px; font-weight: 800; text-decoration: none; white-space: nowrap; }
.ud-ch-club-list article > p { margin: 12px 0; color: #59646e; font-size: 12px; line-height: 1.5; }
.ud-ch-club-list dl { display: grid; grid-template-columns: repeat(4, 1fr); margin: 0; border: 1px solid var(--ch-line); border-radius: 6px; }
.ud-ch-club-list dl div { padding: 8px 10px; border-right: 1px solid var(--ch-line); }
.ud-ch-club-list dl div:last-child { border: 0; }
.ud-ch-club-list dt { color: var(--ch-muted); font-size: 9px; font-weight: 750; text-transform: uppercase; }
.ud-ch-club-list dd { margin: 1px 0 0; font-size: 16px; font-weight: 850; }
.ud-ch-inline-info { display: grid; grid-template-columns: 80px 1fr; gap: 8px; margin-top: 10px; padding: 9px 10px; border-radius: 5px; background: var(--ch-soft); font-size: 11px; line-height: 1.45; }

.ud-ch-team-list > article { display: grid; grid-template-columns: minmax(170px, .7fr) minmax(230px, 1fr) auto; gap: 16px; align-items: center; padding: 14px 16px; border-bottom: 1px solid var(--ch-line); }
.ud-ch-team-list > article:last-child { border: 0; }
.ud-ch-team-main > span { color: var(--ch-muted); font-size: 9px; font-weight: 850; text-transform: uppercase; }
.ud-ch-team-main h3 { margin: 2px 0; font-size: 16px; }
.ud-ch-team-main p { margin: 0; color: var(--ch-green); font-size: 10px; font-weight: 750; }
.ud-ch-team-facts { display: grid; gap: 5px; }
.ud-ch-team-facts span { display: block; color: var(--ch-muted); font-size: 10px; }
.ud-ch-team-facts b { display: block; color: var(--ch-ink); font-size: 11px; }
.ud-ch-team-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; }
.ud-ch-team-actions a:first-child { border-color: #20272e; background: #20272e; color: #fff; }

.ud-play-team-head { display: flex; justify-content: space-between; gap: 20px; padding: 6px 2px 16px; border-bottom: 1px solid var(--ch-line); }
.ud-play-team-head > div:first-child { min-width: 0; }
.ud-play-team-head > div:first-child > a { display: inline-block; margin-bottom: 9px; color: #596570; font-size: 11px; font-weight: 800; text-decoration: none; }
.ud-play-team-head > div:first-child > span { display: block; color: var(--ch-accent); font-size: 10px; font-weight: 900; letter-spacing: .14em; }
.ud-play-team-head h1 { margin: 4px 0 2px; font-size: clamp(27px, 3vw, 40px); line-height: 1.05; letter-spacing: -.035em; }
.ud-play-team-head p { margin: 0; color: #596570; font-size: 13px; }
.ud-play-team-actions { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: flex-end; gap: 8px; padding-top: 23px; }
.ud-play-team-actions form { margin: 0; }
.ud-play-team-actions a, .ud-play-team-actions button { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 9px 13px; border: 1px solid var(--ch-line); border-radius: 6px; background: #fff; color: var(--ch-ink); font: inherit; font-size: 11px; font-weight: 850; text-decoration: none; cursor: pointer; }
.ud-play-team-actions button { border-color: #20272e; background: #20272e; color: #fff; }
.ud-play-team-layout { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(300px, .75fr); gap: 15px; align-items: start; }
.ud-play-team-layout > main, .ud-play-team-layout > aside { display: grid; gap: 15px; min-width: 0; }
.ud-play-team-cash-total { text-align: right; }
.ud-play-team-cash-total strong, .ud-play-team-cash-total small { display: block; }
.ud-play-team-cash-total strong { font-size: 20px; white-space: nowrap; }
.ud-play-team-cash-total small { margin-top: 2px; color: var(--ch-muted); font-size: 8px; font-weight: 750; }
.ud-play-team-cash .is-positive { color: var(--ch-green); }
.ud-play-team-cash .is-negative { color: #b42318; }
.ud-play-team-privacy { margin: 0; padding: 10px 15px; border-bottom: 1px solid var(--ch-line); background: #f8faf9; color: #53606b; font-size: 11px; line-height: 1.45; }
.ud-play-team-cash-list article { display: grid; grid-template-columns: 82px minmax(0, 1fr) auto auto; gap: 12px; align-items: center; min-height: 57px; padding: 9px 15px; border-bottom: 1px solid var(--ch-line); }
.ud-play-team-cash-list article:last-child { border-bottom: 0; }
.ud-play-team-cash-list time { color: var(--ch-muted); font-size: 10px; font-weight: 750; }
.ud-play-team-cash-list div { min-width: 0; }
.ud-play-team-cash-list div strong, .ud-play-team-cash-list div small { display: block; }
.ud-play-team-cash-list div strong { overflow-wrap: anywhere; font-size: 12px; line-height: 1.35; }
.ud-play-team-cash-list div small { margin-top: 2px; color: var(--ch-muted); font-size: 9px; }
.ud-play-team-cash-list article > b { font-size: 12px; white-space: nowrap; }
.ud-play-team-cash-list article > em { padding: 3px 6px; border-radius: 99px; background: #fff0f0; color: #9e1b1b; font-size: 8px; font-style: normal; font-weight: 900; }
.ud-play-team-pagination { padding: 10px 15px; border-top: 1px solid var(--ch-line); }
.ud-play-team-news > a { display: grid; grid-template-columns: 54px minmax(0, 1fr) auto; gap: 12px; align-items: center; min-height: 64px; padding: 10px 15px; border-bottom: 1px solid var(--ch-line); color: var(--ch-ink); text-decoration: none; }
.ud-play-team-news > a:last-child { border-bottom: 0; }
.ud-play-team-news time { color: var(--ch-muted); font-size: 10px; font-weight: 750; }
.ud-play-team-news div { min-width: 0; }
.ud-play-team-news strong, .ud-play-team-news span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ud-play-team-news strong { font-size: 12px; }
.ud-play-team-news span { margin-top: 2px; color: var(--ch-muted); font-size: 10px; }
.ud-play-team-facts > div { padding: 12px 13px; border-bottom: 1px solid var(--ch-line); }
.ud-play-team-facts > div:last-child { border-bottom: 0; }
.ud-play-team-facts strong, .ud-play-team-facts span { display: block; }
.ud-play-team-facts strong { font-size: 11px; }
.ud-play-team-facts span { margin-top: 2px; color: var(--ch-muted); font-size: 9px; }
.ud-play-team-roster article { display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 9px; align-items: center; padding: 9px 13px; border-bottom: 1px solid var(--ch-line); }
.ud-play-team-roster article:last-child { border-bottom: 0; }
.ud-play-team-roster article > b { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: #252d34; color: #fff; font-size: 11px; }
.ud-play-team-roster article div { min-width: 0; }
.ud-play-team-roster article strong, .ud-play-team-roster article span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ud-play-team-roster article strong { font-size: 11px; }
.ud-play-team-roster article span { margin-top: 2px; color: var(--ch-muted); font-size: 9px; }

.ud-ch-match-list > a { display: grid; grid-template-columns: 62px 1fr auto; gap: 13px; align-items: center; padding: 12px 15px; border-bottom: 1px solid var(--ch-line); color: var(--ch-ink); text-decoration: none; }
.ud-ch-match-list > a:last-child { border: 0; }
.ud-ch-match-list > a:hover { background: #fafbfb; }
.ud-ch-match-list time { padding-right: 11px; border-right: 1px solid var(--ch-line); text-align: center; }
.ud-ch-match-list time b, .ud-ch-match-list time span { display: block; }
.ud-ch-match-list time b { font-size: 16px; }
.ud-ch-match-list time span { color: var(--ch-muted); font-size: 9px; }
.ud-ch-match-list div > span { color: var(--ch-accent); font-size: 9px; font-weight: 850; text-transform: uppercase; }
.ud-ch-match-list div > strong, .ud-ch-match-list div > small { display: block; }
.ud-ch-match-list div > strong { margin: 2px 0; font-size: 13px; }
.ud-ch-match-list div > strong i { color: #9ba3aa; font-style: normal; }
.ud-ch-match-list div > small { color: var(--ch-muted); font-size: 10px; }
.ud-ch-rosters { display: flex; flex-wrap: wrap; gap: 7px; padding: 11px 15px; border-top: 1px solid var(--ch-line); background: var(--ch-soft); }
.ud-ch-rosters span { padding: 6px 8px; border: 1px solid #d7dce0; border-radius: 5px; background: #fff; color: var(--ch-muted); font-size: 9px; }
.ud-ch-rosters strong { display: block; color: var(--ch-ink); font-size: 10px; }

.ud-ch-event-list > a { display: grid; grid-template-columns: 42px 1fr auto; gap: 10px; align-items: center; padding: 11px 13px; border-bottom: 1px solid var(--ch-line); color: var(--ch-ink); text-decoration: none; }
.ud-ch-event-list > a:last-child { border: 0; }
.ud-ch-event-list time { padding: 5px 0; border: 1px solid var(--ch-line); border-radius: 5px; text-align: center; }
.ud-ch-event-list time b, .ud-ch-event-list time span { display: block; line-height: 1; }
.ud-ch-event-list time b { font-size: 15px; }
.ud-ch-event-list time span { margin-top: 3px; color: var(--ch-accent); font-size: 8px; font-weight: 900; }
.ud-ch-event-list div { min-width: 0; }
.ud-ch-event-list div span { color: var(--ch-muted); font-size: 8px; font-weight: 750; text-transform: uppercase; }
.ud-ch-event-list div strong, .ud-ch-event-list div small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ud-ch-event-list div strong { margin: 2px 0; font-size: 11px; }
.ud-ch-event-list div small { color: var(--ch-muted); font-size: 9px; }
.ud-ch-event-list .is-response { color: var(--ch-green); font-size: 9px; }

.ud-ch-location-list article { display: grid; grid-template-columns: 1fr auto; gap: 5px 10px; padding: 12px 13px; border-bottom: 1px solid var(--ch-line); }
.ud-ch-location-list article:last-child { border: 0; }
.ud-ch-location-list article strong, .ud-ch-location-list article span { display: block; }
.ud-ch-location-list article strong { font-size: 11px; }
.ud-ch-location-list article span { margin-top: 2px; color: var(--ch-muted); font-size: 9px; }
.ud-ch-location-list article > b { padding: 3px 6px; border-radius: 4px; background: var(--ch-soft); font-size: 9px; }
.ud-ch-location-list article > p { grid-column: 1 / -1; margin: 3px 0 0; color: var(--ch-muted); font-size: 9px; }

.ud-ch-quick-links { display: grid; border: 1px solid var(--ch-line); border-radius: 8px; background: #fff; overflow: hidden; }
.ud-ch-quick-links a { display: grid; grid-template-columns: 31px 1fr auto; gap: 10px; align-items: center; padding: 11px 13px; border-bottom: 1px solid var(--ch-line); color: var(--ch-ink); text-decoration: none; }
.ud-ch-quick-links a:last-child { border: 0; }
.ud-ch-quick-links a:hover { background: var(--ch-soft); }
.ud-ch-quick-links a > span { display: grid; place-items: center; width: 31px; height: 31px; border-radius: 5px; background: #252d34; color: #fff; font-size: 12px; font-weight: 900; }
.ud-ch-quick-links strong, .ud-ch-quick-links small { display: block; }
.ud-ch-quick-links strong { font-size: 11px; }
.ud-ch-quick-links small { color: var(--ch-muted); font-size: 9px; }

@media (max-width: 1060px) {
    .ud-ch-dashboard { grid-template-columns: 1fr; }
    .ud-play-team-layout { grid-template-columns: 1fr; }
    .ud-play-team-layout > aside { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ud-ch-dashboard > aside { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ud-ch-dashboard > aside .ud-ch-quick-links { grid-column: 1 / -1; grid-template-columns: repeat(3, 1fr); }
    .ud-ch-quick-links a { border-right: 1px solid var(--ch-line); border-bottom: 0; }
}

@media (max-width: 900px) {
    .ud-ch-head { display: block; }
    .ud-ch-head-actions { max-width: 100%; overflow-x: auto; }
}

@media (max-width: 760px) {
    .ud-club-section-nav { margin-inline: -4px; }
    .ud-club-section-nav a { min-height: 44px; padding: 6px 10px; font-size: 11px; }
    .ud-ch-head { display: block; }
    .ud-ch-head h1 { font-size: 29px; }
    .ud-ch-head-actions { overflow-x: auto; }
    .ud-ch-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ud-ch-metrics article:nth-child(2) { border-right: 0; }
    .ud-ch-metrics article:nth-child(-n+2) { border-bottom: 1px solid var(--ch-line); }
    .ud-ch-onboarding { grid-template-columns: 1fr; padding: 17px; }
    .ud-ch-onboarding ol { grid-row: auto; }
    .ud-ch-dashboard > aside { grid-template-columns: 1fr; }
    .ud-ch-dashboard > aside .ud-ch-quick-links { grid-column: auto; grid-template-columns: 1fr; }
    .ud-ch-quick-links a { border-right: 0; border-bottom: 1px solid var(--ch-line); }
    .ud-ch-team-list > article { grid-template-columns: 1fr auto; }
    .ud-ch-team-facts { grid-column: 1 / -1; }
    .ud-play-team-head { display: block; }
    .ud-play-team-actions { justify-content: flex-start; padding-top: 13px; }
    .ud-play-team-layout > aside { grid-template-columns: 1fr; }
    .ud-play-team-cash-list article { grid-template-columns: 70px minmax(0, 1fr) auto; gap: 9px; }
    .ud-play-team-cash-list article > em { grid-column: 2 / -1; justify-self: start; }
    .ud-ch-club-list dl { grid-template-columns: repeat(2, 1fr); }
    .ud-ch-club-list dl div:nth-child(2) { border-right: 0; }
    .ud-ch-club-list dl div:nth-child(-n+2) { border-bottom: 1px solid var(--ch-line); }
    .ud-ch-news-list > a { grid-template-columns: 1fr auto; gap: 5px 10px; }
    .ud-ch-news-list time { grid-column: 1 / -1; }
    .ud-ch-notice { grid-template-columns: 1fr auto; }
    .ud-ch-notice span { grid-column: 1 / -1; grid-row: 2; }
}

@media (max-width: 460px) {
    .ud-ch-head-actions a { padding: 9px 10px; font-size: 10px; }
    .ud-ch-metrics article { padding: 11px 12px; }
    .ud-ch-club-title { display: block; }
    .ud-ch-club-title a { display: inline-block; margin-top: 8px; }
    .ud-ch-match-list > a { grid-template-columns: 52px 1fr; }
    .ud-ch-match-list > a > b { display: none; }
    .ud-ch-team-list > article { grid-template-columns: 1fr; }
    .ud-ch-team-facts { grid-column: auto; }
    .ud-ch-team-actions { justify-content: flex-start; }
    .ud-play-team-cash-list article { grid-template-columns: 1fr auto; }
    .ud-play-team-cash-list time { grid-column: 1 / -1; }
}

/* Play club workspace. Scoped to the two private Play views. */
.ud-club-workspace {
    --ch-ink: #102431;
    --ch-muted: #566775;
    --ch-line: #dce3e6;
    --ch-soft: #f3f6f7;
    --ch-accent: #805800;
    --ch-accent-dark: #654500;
    --cw-gold: #efb20c;
    color: var(--ch-ink);
    padding-bottom: 28px;
}
.ud-club-workspace *, .ud-club-workspace *::before, .ud-club-workspace *::after { box-sizing: border-box; }
.ud-club-workspace :where(h1,h2,h3,p,small,strong,span,dd) { overflow-wrap: anywhere; }
.ud-club-workspace :where(a,button):focus-visible { outline: 3px solid #b77a00; outline-offset: 3px; }
.ud-club-workspace section { scroll-margin-top: 20px; }
.ud-cw-hero {
    display: flex; align-items: center; justify-content: space-between; gap: 24px;
    position: relative; isolation: isolate; overflow: hidden;
    padding: 26px 30px; border: 1px solid #2b4450; border-radius: 18px;
    background: #102531; color: #fff;
}
.ud-cw-hero::before {
    content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none;
    background: repeating-radial-gradient(circle at 92% 160%, transparent 0 70px, #dca51a15 71px 72px, transparent 73px 126px);
}
.ud-cw-hero > div { min-width: 0; }
.ud-cw-eyebrow { display: block; color: #ffc83e; font-size: 11px; font-weight: 850; letter-spacing: .13em; }
.ud-cw-hero h1 { margin: 8px 0; color: #fff; font-size: clamp(28px, 2.8vw, 40px); line-height: 1.12; letter-spacing: -.035em; }
.ud-cw-hero p { margin: 0; color: #d1dfe7; font-size: 15px; line-height: 1.5; }
.ud-cw-hero-actions { display: flex; flex-direction: column; align-items: flex-end; flex: 0 0 auto; gap: 5px; max-width: 100%; }
.ud-cw-button, .ud-club-workspace .ud-play-team-actions :where(a,button) {
    display: inline-flex; align-items: center; justify-content: center; gap: 12px;
    min-height: 46px; padding: 11px 17px; border: 1px solid #527080; border-radius: 10px;
    background: #193541; color: #fff; font: inherit; font-size: 13px; font-weight: 800;
    text-align: center; text-decoration: none; cursor: pointer; white-space: normal;
}
.ud-cw-button.is-gold, .ud-club-workspace .ud-play-team-actions button { background: var(--cw-gold); border-color: var(--cw-gold); color: #10212b; }
.ud-cw-button.is-gold:hover, .ud-club-workspace .ud-play-team-actions button:hover { background: #ffca3e; border-color: #ffca3e; }
.ud-cw-quiet { display: inline-flex; align-items: center; gap: 12px; min-height: 44px; padding: 5px 3px; color: #dbe7ed; font-size: 12px; font-weight: 650; text-decoration: none; }
.ud-cw-quiet:hover { color: #fff; text-decoration: underline; }
.ud-cw-nav { display: flex; flex-wrap: wrap; gap: 5px; margin: 12px 0 18px; padding: 5px; border: 1px solid var(--ch-line); border-radius: 12px; background: #fff; }
.ud-cw-nav a { display: inline-flex; align-items: center; justify-content: center; flex: 1 1 auto; min-height: 44px; padding: 8px 15px; border-radius: 8px; color: #435966; font-size: 13px; font-weight: 750; text-decoration: none; }
.ud-cw-nav a:hover { background: #fff4d5; color: #5a4000; }
.ud-cw-back { display: inline-flex; align-items: center; min-height: 44px; margin: -8px 0 6px; color: var(--ch-muted); font-size: 13px; font-weight: 700; text-decoration: none; }
.ud-cw-membership { display: flex; align-items: center; flex-wrap: wrap; gap: 9px; margin-top: 13px; }
.ud-cw-membership > span { padding: 5px 9px; border: 1px solid #eeb21766; border-radius: 6px; color: #ffce4c; font-size: 12px; font-weight: 750; background: #edb20c12; }
.ud-cw-membership small { color: #bdcfd9; font-size: 12px; }
.ud-club-workspace .ud-play-team-actions { padding: 0; align-items: center; min-width: 0; }
.ud-cw-overview, .ud-cw-team-grid { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(0,1fr); gap: 16px; align-items: start; }
.ud-cw-overview { grid-template-areas: 'teams events' 'clubs places' 'news news' 'league league'; }
.ud-cw-team-grid { grid-template-areas: 'roster events' 'news places' 'league league' 'cash cash'; }
.ud-cw-teams { grid-area: teams; }.ud-cw-events { grid-area: events; }.ud-cw-clubs { grid-area: clubs; }
.ud-cw-places { grid-area: places; }.ud-cw-news { grid-area: news; }.ud-cw-league { grid-area: league; }
.ud-cw-roster { grid-area: roster; }.ud-cw-cash { grid-area: cash; }
.ud-club-workspace .ud-ch-panel { min-width: 0; border-radius: 14px; box-shadow: 0 4px 14px #10253104; }
.ud-club-workspace .ud-ch-panel > header { align-items: center; gap: 12px; min-height: 68px; padding: 14px 18px; background: #fff; }
.ud-club-workspace .ud-ch-panel > header > div { min-width: 0; }
.ud-club-workspace .ud-ch-panel > header span { font-size: 10px; color: #805800; letter-spacing: .1em; }
.ud-club-workspace .ud-ch-panel > header h2 { margin-top: 4px; font-size: 19px; letter-spacing: -.025em; line-height: 1.25; }
.ud-club-workspace .ud-ch-panel > header > a { flex-shrink: 0; padding-inline: 3px; font-size: 12px; color: #526773; text-align: right; }
.ud-club-workspace .ud-ch-panel > header > strong { min-width: 28px; padding: 5px 9px; border-radius: 7px; background: #f1f4f6; color: #465c68; font-size: 13px; text-align: center; }
.ud-club-workspace .ud-ch-empty { padding: 17px 18px; text-align: left; }
.ud-club-workspace .ud-ch-empty strong { font-size: 13px; }
.ud-club-workspace .ud-ch-empty span { color: var(--ch-muted); font-size: 12px; font-weight: 400; line-height: 1.55; letter-spacing: normal; text-transform: none; }
.ud-club-workspace .ud-ch-team-list > article { grid-template-columns: 48px minmax(0,1fr); gap: 12px 14px; padding: 20px; align-items: start; }
.ud-cw-team-badge { display: grid; place-items: center; width: 48px; height: 52px; border: 1px solid #d8b752; border-radius: 12px 12px 19px 19px; color: #f9c947; background: #102531; font-size: 17px; font-weight: 850; letter-spacing: -.05em; }
.ud-club-workspace .ud-ch-team-main > span { font-size: 10px; color: #637581; letter-spacing: .06em; }
.ud-club-workspace .ud-ch-team-main h3 { margin: 4px 0 7px; font-size: 24px; line-height: 1.15; letter-spacing: -.025em; }
.ud-club-workspace .ud-ch-team-main p { color: #3e6571; font-size: 12px; }
.ud-club-workspace .ud-ch-team-facts { grid-column: 2; gap: 9px; }
.ud-club-workspace .ud-ch-team-facts span { font-size: 12px; line-height: 1.4; }
.ud-club-workspace .ud-ch-team-facts b { margin-bottom: 2px; font-size: 13px; }
.ud-club-workspace .ud-ch-team-actions { grid-column: 1/-1; justify-content: flex-start; margin-top: 2px; }
.ud-club-workspace .ud-ch-team-actions a { padding: 9px 14px; border-radius: 9px; font-size: 12px; white-space: normal; }
.ud-club-workspace .ud-ch-team-actions a.is-primary { background: #102531; border-color: #102531; color: #fff; }
.ud-club-workspace .ud-ch-team-actions a.is-primary:hover { background: #224959; }
.ud-club-workspace .ud-ch-club-list > article { padding: 18px; }
.ud-club-workspace .ud-ch-club-title { align-items: start; flex-wrap: wrap; }
.ud-club-workspace .ud-ch-club-title span { font-size: 10px; }
.ud-club-workspace .ud-ch-club-title h3 { margin: 5px 0; font-size: 21px; line-height: 1.25; }
.ud-club-workspace .ud-ch-club-title small { font-size: 12px; }
.ud-club-workspace .ud-ch-club-title a { min-height: 44px; font-size: 12px; border-radius: 8px; white-space: normal; }
.ud-club-workspace .ud-ch-club-list article > p { font-size: 13px; margin: 12px 0; }
.ud-club-workspace .ud-ch-club-list dl { margin-top: 15px; border: 0; border-radius: 9px; background: #f3f6f7; }
.ud-club-workspace .ud-ch-club-list dl div { padding: 10px; border-color: #dce3e6; }
.ud-club-workspace .ud-ch-club-list dt { font-size: 9px; }
.ud-club-workspace .ud-ch-club-list dd { font-size: 20px; margin-top: 4px; }
.ud-club-workspace .ud-ch-inline-info { grid-template-columns: auto minmax(0,1fr); font-size: 12px; padding: 12px; }
.ud-club-workspace .ud-ch-event-list > a { display: grid; grid-template-columns: 43px minmax(0,1fr); gap: 7px 12px; padding: 15px 18px; align-items: start; }
.ud-club-workspace .ud-ch-event-list time { border-radius: 8px; padding: 7px 4px; background: #fff2cf; color: #664900; text-align: center; }
.ud-club-workspace .ud-ch-event-list time b { font-size: 21px; line-height: 1.05; }
.ud-club-workspace .ud-ch-event-list time span { color: #664900; font-size: 10px; }
.ud-club-workspace .ud-ch-event-list div { min-width: 0; }
.ud-club-workspace .ud-ch-event-list div > span { color: var(--ch-muted); font-size: 11px; }
.ud-club-workspace .ud-ch-event-list div > strong { margin: 3px 0; font-size: 14px; line-height: 1.4; }
.ud-club-workspace .ud-ch-event-list div > small { color: var(--ch-muted); font-size: 12px; }
.ud-club-workspace .ud-ch-event-list .is-response { grid-column: 2; justify-self: start; padding: 4px 8px; border-radius: 5px; background: #edf5f1; color: #246848; font-size: 11px; white-space: normal; }
.ud-club-workspace .ud-ch-event-list .is-pending { background: #fff1c8; color: #674900; }
.ud-club-workspace .ud-ch-event-list > a:hover, .ud-club-workspace .ud-ch-news-list > a:hover, .ud-club-workspace .ud-play-team-news > a:hover { background: #f5f8f9; }
.ud-club-workspace .ud-ch-news-list > a.is-unread { background: #fffaf0; box-shadow: inset 3px 0 #e5ad16; }
.ud-club-workspace .ud-ch-news-list div strong, .ud-club-workspace .ud-play-team-news strong { font-size: 14px; }
.ud-club-workspace .ud-ch-news-list p, .ud-club-workspace .ud-play-team-news div span { font-size: 12px; white-space: normal; line-height: 1.5; }
.ud-club-workspace .ud-ch-news-list > a > b { background: #fff0c3; color: #6a4b00; font-size: 10px; }
.ud-club-workspace .ud-ch-match-list > a { padding: 15px 18px; grid-template-columns: 65px minmax(0,1fr) auto; }
.ud-club-workspace .ud-ch-match-list div > strong { font-size: 15px; line-height: 1.45; }
.ud-club-workspace .ud-ch-match-list div > span, .ud-club-workspace .ud-ch-match-list div > small { font-size: 12px; }
.ud-club-workspace .ud-ch-match-list time { color: #304b5c; }
.ud-club-workspace .ud-ch-rosters { font-size: 12px; background: #f6f8f9; }
.ud-club-workspace .ud-ch-location-list article { padding: 16px 18px; grid-template-columns: minmax(0,1fr) auto; gap: 8px; }
.ud-club-workspace .ud-ch-location-list strong { font-size: 14px; }
.ud-club-workspace .ud-ch-location-list span, .ud-club-workspace .ud-ch-location-list article > p { font-size: 12px; line-height: 1.5; }
.ud-club-workspace .ud-ch-location-list article > b { font-size: 11px; }
.ud-club-workspace .ud-play-team-roster { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1px; padding: 8px; }
.ud-club-workspace .ud-play-team-roster > article { display: flex; align-items: center; gap: 10px; min-width: 0; padding: 10px; border: 0; border-radius: 8px; }
.ud-club-workspace .ud-play-team-roster > article.is-self { background: #fff7e1; }
.ud-club-workspace .ud-play-team-roster article > b { flex: 0 0 36px; width: 36px; height: 36px; border-radius: 50%; background: #edf2f4; color: #38586b; font-size: 14px; }
.ud-club-workspace .ud-play-team-roster article > div { min-width: 0; }
.ud-club-workspace .ud-play-team-roster strong { font-size: 13px; line-height: 1.4; }
.ud-club-workspace .ud-play-team-roster span { font-size: 11px; line-height: 1.5; }
.ud-club-workspace .ud-play-team-facts > div { padding: 15px 18px; }
.ud-club-workspace .ud-play-team-facts strong { font-size: 14px; }
.ud-club-workspace .ud-play-team-facts span { font-size: 12px; }
.ud-club-workspace .ud-play-team-cash-total strong { font-size: 24px; }
.ud-club-workspace .ud-play-team-cash-total small { font-size: 11px; }
.ud-club-workspace .ud-play-team-privacy { font-size: 12px; line-height: 1.55; padding: 12px 18px; }
.ud-club-workspace .ud-play-team-cash-list article { padding: 13px 18px; }
.ud-club-workspace .ud-play-team-cash-list div strong { font-size: 13px; }
.ud-club-workspace .ud-play-team-cash-list div small, .ud-club-workspace .ud-play-team-cash-list time { font-size: 11px; }
.ud-club-workspace .ud-ch-notice { margin: 0 0 16px; border-radius: 10px; font-size: 13px; }
.ud-club-workspace .ud-ch-notice a, .ud-club-workspace .ud-ch-task-list button { min-height: 44px; display: inline-flex; align-items: center; }
.ud-club-workspace .ud-ch-tasks { margin: 0 0 16px; }
.ud-club-workspace .ud-ch-task-list article strong { font-size: 13px; }
.ud-club-workspace .ud-ch-task-list article span { font-size: 12px; }
.ud-club-workspace .ud-ch-task-list button { font-size: 12px; }
.ud-club-workspace .ud-ch-onboarding { margin-top: 16px; border-radius: 15px; padding: 26px; }
.ud-club-workspace .ud-ch-onboarding-copy > span { background: #fff2ce; color: #805800; }
.ud-club-workspace .ud-ch-onboarding-copy strong { font-size: 23px; }
.ud-club-workspace .ud-ch-onboarding-copy p { font-size: 14px; }
.ud-club-workspace .ud-ch-large-action { background: #efb20c; color: #10212b; border-radius: 10px; }
.ud-club-workspace .ud-ch-onboarding li strong { font-size: 14px; }
.ud-club-workspace .ud-ch-onboarding li small { font-size: 12px; line-height: 1.5; }
@media (max-width: 1150px) {
    .ud-cw-hero { padding: 24px; }
    .ud-cw-hero-actions { flex-shrink: 1; }
    .ud-cw-overview, .ud-cw-team-grid { grid-template-columns: minmax(0,1.2fr) minmax(0,1fr); gap: 12px; }
    .ud-club-workspace .ud-play-team-roster { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 850px) {
    .ud-cw-hero { flex-wrap: wrap; gap: 18px; }
    .ud-cw-hero-actions { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 6px 20px; }
    .ud-cw-overview, .ud-cw-team-grid { display: flex; flex-direction: column; gap: 14px; }
    .ud-cw-overview > section, .ud-cw-team-grid > section { width: 100%; }
    .ud-club-workspace .ud-play-team-roster { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .ud-club-workspace .ud-ch-panel > header { flex-wrap: wrap; }
}
@media (max-width: 520px) {
    .ud-cw-hero { padding: 22px 18px; border-radius: 14px; }
    .ud-cw-eyebrow { font-size: 10px; }
    .ud-cw-hero h1 { font-size: 29px; }
    .ud-cw-hero p { font-size: 14px; }
    .ud-cw-nav { gap: 2px; padding: 4px; }
    .ud-cw-nav a { padding-inline: 8px; font-size: 12px; }
    .ud-club-workspace .ud-ch-team-main h3 { font-size: 22px; }
    .ud-club-workspace .ud-play-team-roster { grid-template-columns: minmax(0,1fr); }
    .ud-club-workspace .ud-ch-panel > header, .ud-club-workspace .ud-ch-team-list > article { padding: 15px; }
    .ud-club-workspace .ud-ch-match-list > a { grid-template-columns: 54px minmax(0,1fr); gap: 10px; }
    .ud-club-workspace .ud-ch-match-list > a > b { display: none; }
    .ud-club-workspace .ud-ch-club-list dl { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .ud-club-workspace .ud-ch-club-title { display: flex; }
    .ud-club-workspace .ud-play-team-cash-total { text-align: left; }
    .ud-club-workspace .ud-ch-onboarding { padding: 19px; }
}
@media (prefers-reduced-motion: reduce) { .ud-club-workspace { scroll-behavior: auto; } }

/* Each column follows its content height; long calendars leave no empty rows. */
.ud-cw-overview, .ud-cw-team-grid { grid-template-areas: none; }
.ud-cw-primary, .ud-cw-secondary { display: grid; gap: 16px; min-width: 0; align-content: start; }
.ud-cw-primary > section, .ud-cw-secondary > section { grid-area: auto; }
.ud-club-workspace .ud-ch-event-list .is-declined { color: #94413b; background: #fcefeb; }
.ud-club-workspace .ud-ch-event-list .is-tentative { color: #576575; background: #eef1f6; }
@media (max-width: 850px) {
    .ud-cw-primary, .ud-cw-secondary { display: contents; }
    .ud-cw-overview section, .ud-cw-team-grid section { width: 100%; }
    .ud-cw-teams, .ud-cw-roster { order: 0; }
    .ud-cw-events { order: 1; }
    .ud-cw-clubs, .ud-cw-news { order: 2; }
    .ud-cw-places { order: 3; }
    .ud-cw-league { order: 4; }
    .ud-cw-cash { order: 5; }
}

.ud-club-workspace .ud-cw-pagination { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px; padding: 14px 18px; }
.ud-cw-pagination > a, .ud-cw-pagination > span { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px 12px; border-radius: 8px; font-size: 12px; }
.ud-cw-pagination > a { border: 1px solid #d2dce1; background: #fff; color: #173d50; font-weight: 750; text-decoration: none; }
.ud-cw-pagination > a:hover { background: #f1f5f6; }
.ud-cw-pagination > span[aria-disabled] { color: #75818a; background: #f5f7f8; }
.ud-cw-pagination .ud-cw-page-number { padding-inline: 0; color: #556674; font-size: 11px; }
