/* The Hub's page kit (agreed 17 October 2026): one layout for every screen, in the
   Hub's own greens and Archivo. Each screen: a small green label, a big title and one
   line on what it is for (.kit-head), pills to switch views (.kit-pills), filters in a
   row (.kit-filters), small section headings with a count (.kit-sec), and items as rows
   in one card (.kit-list). No card round the whole page. Loaded after the app's other
   styles, and by the separate pages, so the same pieces look the same everywhere. */
:where(:root){--floor:#f5f5ef;--card:#fffefa;--ink:#17372c;--muted:#63766c;--home:#24754f;--line:#dce3d7;--chip:#edf1e8;--court:#153f30;--lime:#d5f188}
@media (prefers-color-scheme:dark){:where(:root){--floor:#10231d;--card:#193229;--ink:#f2f5e9;--muted:#adbbaf;--home:#bddf88;--line:#334d3f;--chip:#223e30;--court:#204831;--lime:#d5f188}}

.kit-page{background:transparent!important;border:0!important;padding:0!important;margin-top:0!important;box-shadow:none!important;overflow:visible!important}
.kit-head{padding:22px 0 4px}
.kit-head .eyebrow,.kit-eyebrow{display:block;margin:0 0 6px!important;font-size:11px!important;font-weight:700;letter-spacing:.16em;line-height:1.4;text-transform:uppercase;color:var(--home)!important}
.kit-head h2,.kit-head h1{margin:0 0 6px!important;font-size:34px!important;line-height:1.08;letter-spacing:-.045em}
.kit-intro,.kit-head .hint{margin:0 0 10px;color:var(--muted);font-size:14px;line-height:1.5;max-width:68ch}
.kit-head-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}

.kit-pills{display:flex;gap:6px;overflow-x:auto;margin:8px 0 12px;padding:2px 0 6px;scrollbar-width:none}
.kit-pills::-webkit-scrollbar{display:none}
.kit-pills>a,.kit-pills>button,.kit-pill{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:6px;box-sizing:border-box;min-height:38px;margin:0;padding:0 14px;border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--ink);font:inherit;font-size:14px;font-weight:700;line-height:1;white-space:nowrap;text-decoration:none;cursor:pointer;box-shadow:none}
.kit-pills>[hidden]{display:none}
.kit-pills>[aria-current="page"],.kit-pills>[aria-pressed="true"],.kit-pill[aria-pressed="true"]{background:var(--court);color:var(--lime);border-color:var(--court)}
.kit-pill .ui-icon,.kit-pill svg{width:18px;height:18px}

.kit-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:6px 0 4px}
.kit-filters>div,.kit-filters>label{min-width:0;margin:0}
.kit-filters label{display:block;margin:0 0 5px;font-size:12px;font-weight:700;color:var(--muted)}
.kit-filters select,.kit-filters input{box-sizing:border-box;width:100%;min-width:0;min-height:44px;margin:0;font-size:15px}

.kit-sec{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:24px 0 8px}
.kit-sec h3{margin:0!important;font-size:17px!important;letter-spacing:-.01em}
.kit-sec>span{color:var(--muted);font-size:13px;font-weight:600}
.kit-note{margin:-2px 0 8px;color:var(--muted);font-size:13px}

.kit-list{box-sizing:border-box;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:0 16px;margin:0 0 6px}
.kit-list>.fixture-card,.kit-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;padding:14px 0;border:0;border-top:1px solid var(--line);font-size:15px;font-weight:700;line-height:1.35}
.kit-list>.fixture-card:first-child,.kit-row:first-child{border-top:0}
.kit-list>.fixture-card small,.kit-row small{display:block;margin-top:3px;font-size:13px;font-weight:400;color:var(--muted)}
.kit-list>.fixture-card{flex-wrap:wrap}
.kit-list>.fixture-card>div{min-width:0;flex:1 1 190px}
.kit-list>.fixture-card>button,.kit-list>.fixture-card>.mini,.kit-list>.fixture-card>.kit-actions>button,.kit-btn{flex:0 0 auto;width:auto!important;min-height:36px;margin:0;padding:0 14px;border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--ink);font:inherit;font-size:13px;font-weight:700;white-space:nowrap;cursor:pointer}
.kit-list>.fixture-card>button:first-of-type,.kit-list>.fixture-card>.kit-actions>button:first-child,.kit-btn.primary{background:var(--court);color:var(--lime);border-color:var(--court)}
.kit-list>.fixture-card .text-button{display:inline-block;margin:6px 10px 0 0;font-size:13px}
.kit-list>.fixture-card .match-status{display:inline-block;margin:6px 6px 0 0}
.kit-list>.hint,.kit-list>p{margin:0;padding:16px 0;font-weight:400}
.kit-actions{display:flex;flex-wrap:wrap;gap:8px;flex:0 0 auto}

/* Whole-width cards (club night, a form) look like the list card. */
.kit-card{box-sizing:border-box;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:16px;margin:0 0 6px}

@media (max-width:520px){
 .kit-head{padding-top:14px}
 .kit-head h2,.kit-head h1{font-size:28px!important}
 .kit-list{padding:0 14px}
 .kit-list>.fixture-card,.kit-row{gap:10px;padding:13px 0;font-size:15px}
}

/* Standings tab: its match cards, tables and totals use the same card. */
#leaguePage .league-match,#leaguePage .league-summary>div,#leaguePage .league-table-scroll,#leaguePage .league-empty{background:var(--card);border:1px solid var(--line);border-radius:18px}
#leaguePage .league-match{padding:16px;margin:10px 0}
#leaguePage .league-summary>div{padding:14px 16px}
#leaguePage .league-empty{border-style:solid}
#leaguePage>.hint{margin-top:22px;font-size:13px;color:var(--muted)}
.kit-card>:first-child{margin-top:0!important}.kit-card>:last-child{margin-bottom:0!important}
/* Folding card (Install on your phone) and Settings on this phone. */
details.kit-fold>summary{cursor:pointer;font-weight:700;font-size:15px;list-style:none}
details.kit-fold>summary::-webkit-details-marker{display:none}
details.kit-fold>summary::after{content:"Show";float:right;font-size:13px;color:var(--muted);font-weight:600}
details.kit-fold[open]>summary::after{content:"Hide"}
details.kit-fold[open]>summary{margin-bottom:10px}
#acctSettings .kit-card label{display:block;font-size:13px;font-weight:700;margin:0 0 6px}
#acctSettings .kit-card select{width:100%;margin:0 0 8px}
#acctSettings .kit-card .kit-actions{margin-top:10px}
#acctSettings .kit-card>.btn{width:auto}
#acctSettings .kit-signout{display:flex;justify-content:center;margin-top:18px;background:transparent;border:0}
#acctSettings .phone-status{display:inline;font-size:12px}

/* The part under a tab's pills slides in when you switch pill (hosts.js). */
@keyframes kitIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.kit-enter{animation:kitIn .22s ease-out both}
@media (prefers-reduced-motion:reduce){.kit-enter{animation:none}}

/* A second row of pills (League admin's pages under Me). */
.kit-pills.kit-sub{margin-top:-4px}
.kit-pills.kit-sub>a{min-height:34px;font-size:13px;padding:0 12px}

.kit-who{margin:4px 0 10px}.kit-who b{color:var(--ink)}

/* Tab screens do not slide in as a whole (the older court-enter animation): the heading stays still and only
   the part under the pills moves in (.kit-enter). */
#scorecardApp .captain-dashboard.kit-page:not([hidden]),#scorecardApp .kit-page.page-arrive{animation:none}

/* Number dots: on the bar's tabs and on pills (hosts.js). */
#scorecardApp .app-nav .mini{position:relative}
.tab-badge{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#d64545;color:#fff;font:700 11px/1 Archivo,system-ui,sans-serif;box-sizing:border-box}
#scorecardApp .app-nav .tab-badge{position:absolute;top:4px;left:calc(50% + 4px)}
/* Wide screens: the icon sits beside the word, so the dot follows the word instead of covering it. */
@media (min-width:761px){#scorecardApp .app-nav .tab-badge{position:static;order:9;margin-left:2px}}
.kit-pills .tab-badge{margin-left:2px}
.cn-new-head{margin:18px 0 0}

/* Player page (player.html, and a linked player's own stats in My badminton). */
.pf-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 8px}
.pf-fact{box-sizing:border-box;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:14px 16px;margin:0}
.pf-fact b{display:block;font-size:26px;letter-spacing:-.02em;line-height:1.15}.pf-fact span{font-size:13px;color:var(--muted)}
.pf-form{display:flex;gap:4px;flex-wrap:wrap;margin:6px 0 2px}
.pf-chip{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 5px;border-radius:7px;font-size:12px;font-weight:800;background:var(--chip);color:var(--muted);border:1px solid var(--line)}
.pf-chip.won{background:var(--court);color:var(--lime);border-color:var(--court)}
.pf-level{display:inline-grid;place-items:center;min-width:44px;height:36px;padding:0 10px;border-radius:12px;background:var(--court);color:var(--lime);font-weight:800;font-size:18px;letter-spacing:0;margin-left:10px;vertical-align:middle}
.pf-months{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:14px 16px}.pf-months::-webkit-scrollbar{display:none}
.pf-month{flex:0 0 auto;text-align:center;font-size:12px;font-weight:600;color:var(--muted)}
.pf-month b{display:grid;place-items:center;min-width:40px;height:36px;margin-top:4px;border-radius:10px;background:var(--chip);border:1px solid var(--line);color:var(--ink);font-size:16px}
.pf-month:last-child b{background:var(--court);color:var(--lime);border-color:var(--court)}
.pf-res{font-size:13px;font-weight:700;white-space:nowrap;color:var(--muted)}.pf-res.won{color:var(--home)}
.pf-overview p{margin:0 0 10px;line-height:1.55}
@media (max-width:520px){.pf-fact b{font-size:22px}.pf-fact{padding:12px 13px}}
.pf-wrap{flex-wrap:wrap}

/* Shuttle Rating (shuttle.js): the number, how reliable it is, and the questions. */
.sr-card{display:flex;align-items:center;gap:16px}
.sr-num{flex:0 0 auto;display:grid;place-items:center;min-width:86px;height:86px;border-radius:22px;background:var(--court);color:var(--lime);font:800 30px/1 Archivo,system-ui,sans-serif;letter-spacing:-.03em}
.sr-num small{display:block;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;opacity:.85;margin-top:-18px}
.sr-info{min-width:0;flex:1}.sr-info b{display:block;font-size:17px}.sr-info p{margin:4px 0 0;font-size:13px;color:var(--muted)}
.sr-bar{height:8px;border-radius:99px;background:var(--chip);margin:8px 0 2px;overflow:hidden}.sr-bar i{display:block;height:100%;background:var(--home)}
.sr-ask fieldset{border:0;padding:0;margin:12px 0}.sr-ask legend{font-weight:800;margin-bottom:6px}
.sr-ask label{display:flex;gap:8px;align-items:center;font-weight:400;margin:4px 0;font-size:15px}.sr-ask input{width:auto;min-height:0;margin:0}

/* Me heading: Shuttle Rating badge beside the Settings cog. */
.acct-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.acct-sr{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;min-width:64px;height:48px;padding:0 10px;border-radius:14px;background:var(--court);color:var(--lime);text-decoration:none;line-height:1}
.acct-sr b{font:800 19px/1 Archivo,system-ui,sans-serif;letter-spacing:-.02em}.acct-sr small{font-size:8px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-top:4px;opacity:.85}
.acct-sr.none b{font-size:13px}
/* My badminton: the Shuttle Rating, big, at the top. */
.sr-hero{display:flex;align-items:center;gap:18px;background:var(--court);color:var(--lime);border-color:var(--court)}
.sr-hero .sr-big{font:800 52px/1 Archivo,system-ui,sans-serif;letter-spacing:-.04em;flex:0 0 auto}
.sr-hero .sr-info b{color:var(--lime);font-size:13px;letter-spacing:.12em;text-transform:uppercase}
.sr-hero .sr-info p{color:var(--lime);opacity:.85}
.sr-hero .sr-bar{background:rgba(255,255,255,.18)}.sr-hero .sr-bar i{background:var(--lime)}
.sr-hero a{color:var(--lime);font-weight:800;font-size:14px}
@media (max-width:520px){.sr-hero .sr-big{font-size:44px}}
@media (max-width:520px){.acct-actions .acct-cog span{display:none}.acct-actions .acct-cog{padding:0 11px}}
/* The heading row never pushes its buttons off the screen: the title side shrinks and wraps. */
.kit-head-row>div:first-child{flex:1 1 auto;min-width:0}.kit-head-row h2{overflow-wrap:break-word}
@media (max-width:420px){.acct-sr{min-width:54px;height:44px;padding:0 8px}.acct-sr b{font-size:17px}.acct-sr small{font-size:7px}.acct-actions{gap:6px}}
/* Section tabs inside a page (agreed 18 October 2026): plain text with a green underline, so
   they never look like the app's own rows of pills above them. Members, League admin, Sign in. */
.kit-tabs{display:flex!important;gap:2px!important;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--line);margin:10px 0 16px!important;padding:0!important;background:var(--floor,transparent)}
.kit-tabs::-webkit-scrollbar{display:none}
.kit-tabs>button,.kit-tabs>a{flex:0 0 auto;min-height:42px!important;margin:0 0 -1px!important;padding:0 12px!important;border:0!important;border-bottom:3px solid transparent!important;border-radius:0!important;background:transparent!important;color:var(--muted)!important;font-weight:800;font-size:14px;box-shadow:none!important}
.kit-tabs>[aria-pressed="true"],.kit-tabs>[aria-current="page"],.kit-tabs>.on,.kit-tabs>[aria-selected="true"]{color:var(--ink)!important;border-bottom-color:var(--home,#24754f)!important}
@media (prefers-color-scheme:dark){.kit-tabs>[aria-pressed="true"],.kit-tabs>[aria-current="page"],.kit-tabs>.on,.kit-tabs>[aria-selected="true"]{border-bottom-color:var(--lime,#c8e98a)!important}}
