/* SportzClaus Live Scores — polish layer.
   EVERY colour comes from the theme's own tokens (--paper, --canvas, --recess,
   --ink, --rule, --brand, --accent) so light and dark modes are both correct.
   Never hard-code white/grey here: the theme flips tokens on
   html[data-theme="dark"] / body.dark-mode.
   Never write a star-slash sequence inside a comment either — it ends the
   comment early and the leftover text eats the next rule's block. */

/* Panels */
.sz-smp .sz-md-panel{background:var(--paper);border:1px solid var(--rule);border-radius:14px;padding:18px 20px;margin:0 0 18px;color:var(--ink);}
.sz-smp .sz-md-panel > .sz-smp-h:first-child{margin-top:0;}
/* One rhythm for every heading inside a panel: flush at the top, a clear break
   before a following section (the Playing XI panel stacks one per team). */
.sz-smp .sz-md-panel .sz-smp-h{margin:26px 0 14px;}
.sz-smp .sz-md-panel > :first-child{margin-top:0;}
.sz-smp .sz-md-panel > :last-child{margin-bottom:0;}
/* Panels never butt against the page edge on small screens. */
.sz-smp .sz-md-panel > .sz-smp-tablewrap:last-child{margin-bottom:0;}
.sz-md-hero{background:linear-gradient(135deg,color-mix(in srgb,var(--rc0,var(--brand)) 16%,var(--paper)),color-mix(in srgb,var(--rc1,var(--accent)) 14%,var(--paper)));border-color:var(--rule-strong);}
.szl-hero-body .sz-rail-team{font-size:1.15em;padding:9px 0;color:var(--ink);}
.szl-hero-body .sz-rail-name a{color:var(--ink);text-decoration:none;font-weight:700;}
.szl-hero-body .sz-rail-name a:hover{color:var(--brand-text);text-decoration:underline;}
.szl-hero-body .sz-rail-score{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:800;font-size:1.12em;letter-spacing:-.01em;}
.szl-hero-body .szl-hero-ov{font-weight:600;font-size:.82em;color:var(--ink-3);letter-spacing:0;white-space:nowrap;}
/* The bolder score must not steal the team name's room on phones. */
@media (max-width:760px){
	.szl-hero-body .sz-rail-score{font-size:1em;}
	.szl-hero-body .szl-hero-ov{display:block;font-size:.76em;}
}
.sz-md-hero .sz-sc-status{margin-top:10px;font-weight:700;color:var(--ink);}
.sz-md-hero .sz-sc-status.is-live{color:var(--accent);}
.sz-smp .sz-smp-sub,.sz-smp .sz-sc-note{color:var(--ink-3);}

/* Tables */
.sz-smp .sz-smp-table{width:100%;border-collapse:collapse;font-size:.95em;color:var(--ink);}
.sz-smp .sz-smp-table th{font-size:.78em;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);text-align:left;padding:9px 10px;border-bottom:2px solid var(--rule-strong);}
.sz-smp .sz-smp-table td{padding:9px 10px;border-bottom:1px solid var(--rule);vertical-align:middle;}
.sz-smp .sz-smp-table tbody tr:nth-child(even){background:var(--recess);}
.sz-smp .sz-smp-table tbody tr:hover{background:color-mix(in srgb,var(--brand) 10%,var(--paper));}
.sz-smp .sz-smp-table a{color:var(--ink);text-decoration:none;font-weight:600;}
.sz-smp .sz-smp-table a:hover{color:var(--brand-text);text-decoration:underline;}
.sz-smp .sz-smp-tablewrap{overflow-x:auto;margin:0 0 14px;}

/* Collapsibles */
.sz-smp details{border:1px solid var(--rule);border-radius:10px;margin:0 0 10px;padding:0 12px;background:var(--paper);}
.sz-smp details[open]{padding-bottom:10px;}
.sz-smp .sz-ovs-sum{cursor:pointer;padding:11px 2px;font-weight:700;color:var(--ink);display:flex;justify-content:space-between;align-items:center;gap:10px;}
.sz-smp .sz-ovs-count{font-weight:500;color:var(--ink-3);font-size:.85em;}
.sz-smp .sz-ov{color:var(--ink);}
.sz-smp .sz-ov-no{color:var(--ink-3);}
.sz-smp .sz-ov-wkt{color:var(--accent);}

/* Directory cards */
.sz-smp .sz-lg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;align-items:stretch;margin:14px 0 22px;}
.sz-smp .sz-lg-card{display:flex;flex-direction:column;gap:8px;padding:16px;border-radius:14px;background:var(--paper);border:1px solid var(--rule);color:var(--ink);text-decoration:none;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;}
.sz-smp .sz-lg-card:hover{transform:translateY(-2px);border-color:var(--brand);box-shadow:0 8px 22px var(--brand-glow,rgba(0,0,0,.12));}
.sz-smp .sz-lg-name{font-weight:800;line-height:1.3;color:var(--ink);}
.sz-smp .sz-lg-meta{display:flex;flex-wrap:wrap;gap:6px;font-size:.78em;}
.sz-smp .sz-lg-code{padding:2px 8px;border-radius:999px;background:var(--recess);color:var(--ink-2);font-weight:700;}
.sz-smp .sz-lg-season{padding:2px 8px;border-radius:999px;background:var(--recess);color:var(--ink-3);}
.sz-smp .sz-lg-go{margin-top:auto;font-size:.82em;font-weight:700;color:var(--brand-text);}

/* Player chips */
.sz-plchip-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:10px;margin:10px 0 18px;}
.sz-plchip{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;background:var(--paper);border:1px solid var(--rule);color:var(--ink);text-decoration:none;transition:background .12s ease,border-color .12s ease;}
a.sz-plchip:hover{background:var(--recess);border-color:var(--brand);}
.sz-plchip-img{width:38px;height:38px;border-radius:50%;overflow:hidden;flex:0 0 38px;background:var(--recess);color:var(--ink-2);display:flex;align-items:center;justify-content:center;font-weight:800;}
.sz-plchip-img img{width:100%;height:100%;object-fit:cover;}
.sz-plchip-name{font-weight:700;font-size:.88em;line-height:1.25;color:var(--ink);}
.sz-plchip-tag{display:block;font-size:.72em;color:var(--ink-3);font-weight:500;}

/* Headings / back link */
.sz-smp .sz-smp-title{font-size:clamp(1.5rem,3vw,2.1rem);margin:6px 0 4px;font-weight:800;color:var(--ink);}
.sz-smp .sz-smp-h{color:var(--ink);}
.sz-smp .sz-smp-sub{margin:0 0 16px;max-width:70ch;}
.sz-smp .sz-sc-h{margin:26px 0 12px;}
.sz-md-back{display:inline-block;margin:4px 0 14px;font-weight:700;text-decoration:none;color:var(--ink-2);}
.sz-md-back:hover{color:var(--brand-text);}

/* Upcoming card foot */
.sz-rail-upcoming .sz-rail-foot{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.sz-rail-upcoming .sz-rail-when{font-weight:600;}
.sz-sc-count{font-size:.8em;opacity:.8;}

/* Search + loading */
.szl-search-form{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:0 0 20px;}
.szl-search-form input,.szl-search-form select{background:var(--paper);color:var(--ink);border:1px solid var(--rule-strong);border-radius:8px;padding:10px 13px;font:inherit;}
.szl-search-form input::placeholder{color:var(--ink-4);}
.sz-smp .sz-sc-empty{padding:14px 16px;border:1px dashed var(--rule-strong);border-radius:12px;color:var(--ink-2);background:var(--paper);}

/* Points-table qualified marker + rank tables */
.sz-smp .sz-pt-team a{font-weight:700;}
.sz-smp .sz-rank td:last-child{font-variant-numeric:tabular-nums;}

@media (max-width:700px){
	.sz-smp .sz-md-panel{padding:14px;}
	.sz-plchip-grid{grid-template-columns:repeat(auto-fill,minmax(148px,1fr));}
}

/* ---- Score cards: even heights, no dead gap, no squeezed team names ----
   Cards in a grid/scroller stretch to the tallest sibling (a Test card with
   two innings). Pin the foot to the bottom so short T20/ODI cards read as
   intentional instead of half-empty, and keep the score column tight so the
   team name never truncates to "South Z…". */
.sz-rail-card{display:flex;flex-direction:column;}
.sz-rail-card .sz-rail-body{flex:1 1 auto;display:flex;flex-direction:column;justify-content:center;gap:6px;}
.sz-rail-card .sz-rail-foot{margin-top:auto;}
.sz-rail-card .sz-rail-team{display:flex;align-items:center;gap:9px;min-width:0;}
.sz-rail-card .sz-rail-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.sz-rail-card .sz-rail-score{flex:0 0 auto;margin-left:auto;text-align:right;font-variant-numeric:tabular-nums;line-height:1.25;white-space:normal;max-width:52%;}
/* Two-innings (Test) lines get a slightly smaller, tighter score type. */
.sz-rail-card .sz-rail-score{font-size:.95em;}
@media (max-width:520px){
	.sz-rail-card .sz-rail-score{max-width:58%;font-size:.9em;}
}

/* Two-innings (Test/first-class) scores: smaller, tighter column so the team
   name keeps its room and never truncates to "South …". */
.sz-rail-card .sz-rail-score.is-multi{font-size:.82em;line-height:1.35;max-width:44%;letter-spacing:-.01em;}
@media (max-width:520px){ .sz-rail-card .sz-rail-score.is-multi{font-size:.78em;max-width:50%;} }

/* Panel separation: a touch of elevation so stacked panels read as cards in
   dark mode (where paper and canvas are close in tone). */
.sz-smp .sz-md-panel{box-shadow:0 1px 0 var(--rule), 0 6px 18px rgba(0,0,0,.06);}
html[data-theme="dark"] .sz-smp .sz-md-panel,
body.dark-mode .sz-smp .sz-md-panel{border-color:var(--rule-strong);box-shadow:0 6px 20px rgba(0,0,0,.45);}

/* ===== At the crease: batters, bowler, last 6 balls ===== */
.szl-crease-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.szl-crease-table{margin:0;}
.szl-crease-table th:first-child{width:auto;}
.szl-crease-name{display:flex;align-items:center;gap:9px;font-weight:700;}
.szl-crease-name a{color:var(--ink);text-decoration:none;}
.szl-crease-name a:hover{color:var(--brand-text);text-decoration:underline;}
.szl-mini-img{width:30px;height:30px;flex:0 0 30px;font-size:.8em;}
.szl-crease-table tr.is-strike{background:color-mix(in srgb,var(--brand) 12%,transparent);}
.szl-strike{color:var(--accent);font-weight:900;margin-left:3px;}
.szl-crease-meta{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:14px;padding-top:12px;border-top:1px solid var(--rule);}
.szl-last6{display:inline-flex;align-items:center;gap:6px;}
.szl-last6-lbl{font-size:.75em;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3);font-weight:700;}
.szl-meta-pill{font-size:.82em;padding:4px 11px;border-radius:999px;background:var(--recess);color:var(--ink-2);}
.szl-meta-pill strong{color:var(--ink);}
@media (max-width:760px){ .szl-crease-grid{grid-template-columns:1fr;gap:10px;} }

/* ===== In-page match section nav (sticky) =====
   --szl-stick is the measured height of the theme's sticky masthead (set by
   livescores.js). Without it this nav sticks to top:0 and spends the whole
   scroll hidden behind the header. */
.szl-section-nav{position:sticky;top:var(--szl-stick,118px);z-index:5;background:var(--canvas);padding:10px 0;margin:0 0 18px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;box-shadow:0 10px 14px -12px rgba(0,0,0,.28);}
.szl-section-nav .sz-view-link{white-space:nowrap;}
/* Same visual language as the theme's .active tab: ink text + brand underline. */
.szl-section-nav .sz-view-link.is-current{color:var(--ink);}
.szl-section-nav .sz-view-link.is-current::after{content:'';position:absolute;left:14px;right:14px;bottom:-1px;height:3px;background:var(--brand);}
#szlMatch [id^="szl-"]{scroll-margin-top:calc(var(--szl-stick,118px) + 78px);}
.szl-nav-min{margin-bottom:10px;}

/* ===== Scorecard ===== */
.szl-inn{border:1px solid var(--rule);border-radius:12px;overflow:hidden;background:var(--paper);}
/* Two classes: .sz-smp details already claims margin/padding at this weight. */
.sz-smp details.szl-inn{margin:0 0 16px;}
.sz-smp details.szl-inn:last-child{margin-bottom:0;}
/* The innings is a <details>: the summary is full-bleed inside the rounded
   border, the tables breathe from it and from each other. */
.sz-smp details.szl-inn,
.sz-smp details.szl-inn[open]{padding:0;}
.szl-inn .sz-smp-tablewrap{margin:0 12px 12px;}
.szl-inn .sz-smp-tablewrap:first-of-type{margin-top:12px;}
.szl-inn .sz-sc-note{margin:0 12px 12px;}
.sz-smp .szl-inn-sum{background:var(--recess);padding:13px 14px;font-size:1.02em;border-bottom:1px solid var(--rule);}
.sz-smp .szl-inn:not([open]) .szl-inn-sum{border-bottom:0;}
.szl-inn-team{font-weight:800;}
.szl-bat-table td:first-child,.szl-bowl-table td:first-child{max-width:230px;}
.szl-bat-name{display:flex;flex-direction:column;gap:2px;}
.szl-bat-name a{font-weight:700;}
.szl-how-inline{display:none;font-size:.78em;color:var(--ink-3);}
.szl-col-how{color:var(--ink-3);font-size:.85em;max-width:190px;}
.szl-bat-table th:nth-child(n+3),.szl-bat-table td:nth-child(n+3),
.szl-bowl-table th:nth-child(n+2),.szl-bowl-table td:nth-child(n+2){text-align:right;width:56px;font-variant-numeric:tabular-nums;}
.szl-bat-table tbody tr:hover,.szl-bowl-table tbody tr:hover{background:color-mix(in srgb,var(--brand) 8%,var(--paper));}
@media (max-width:700px){
	/* Fold the dismissal under the batter name so the numbers stay readable. */
	.szl-col-how{display:none;}
	.szl-how-inline{display:block;}
	.szl-bat-table th:nth-child(n+3),.szl-bat-table td:nth-child(n+3){width:auto;}
	.szl-bat-table th:nth-child(6),.szl-bat-table td:nth-child(6),
	.szl-bat-table th:nth-child(7),.szl-bat-table td:nth-child(7){display:none;} /* hide 6s + SR on phones */
}

/* ===== Win probability ===== */
.szl-wp{display:flex;align-items:center;gap:14px;font-weight:600;color:var(--ink);}
.szl-wp-side{flex:0 0 auto;font-size:.92em;}
.szl-wp-right{text-align:right;}
.szl-wp-bar{flex:1 1 auto;min-width:80px;height:12px;border-radius:6px;overflow:hidden;background:var(--accent);display:block;}
.szl-wp-fill{display:block;height:100%;background:var(--brand);}
@media (max-width:560px){
	.szl-wp{flex-wrap:wrap;gap:8px;}
	.szl-wp-bar{order:3;flex-basis:100%;}
	.szl-wp-side{flex:1 1 40%;}
}

/* ===== Rankings rows ===== */
.szl-rank-img{width:26px;height:26px;object-fit:contain;border-radius:50%;vertical-align:middle;margin-right:8px;background:var(--recess);}
.szl-rank-sub{display:block;font-size:.76em;color:var(--ink-3);margin-left:34px;}

/* ===== Schedule series filter ===== */
.szl-series-filter{align-items:center;gap:10px;}
.szl-filter-label{font-size:.78em;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3);font-weight:700;}
.szl-series-filter select{min-width:min(320px,80vw);}

/* ===== Wire article ===== */
.sz-wire-body{max-width:760px;line-height:1.75;color:var(--ink);font-size:1.02em;}
.sz-wire-body p{margin:0 0 1em;}
