/* ═══════════════ SwiftScore · Public brand colour (top bar, title bands, card headings, footer) ═══════════════
   Same palette as the admin panel. Change the colour here only. */
body.pub-light{
  --brand:#155E46;
  --brand-2:#0F4A37;
  --brand-hi:rgba(255,255,255,.16);
  --brand-accent:#6EE7B7;
  --brand-text:#FFFFFF;
  --brand-muted:rgba(255,255,255,.8);
}

/* ── 1) Top menu bar ── */
html body.pub-light .pub-nav{
  background:linear-gradient(90deg,var(--brand) 0%,var(--brand-2) 100%)!important;
  border-bottom:1px solid rgba(0,0,0,.18)!important;
  box-shadow:0 2px 14px rgba(15,74,55,.25)!important;
  backdrop-filter:none!important;
}
html body.pub-light .pub-nav .pub-org-name{color:var(--brand-text)!important}
html body.pub-light .pub-nav .pub-org-logo{box-shadow:0 0 0 2px rgba(255,255,255,.35)!important}
html body.pub-light .pub-nav small,html body.pub-light .pub-nav .small{color:rgba(255,255,255,.7)!important}
html body.pub-light .pub-links a{color:var(--brand-muted)!important;background:transparent!important;border-radius:10px;position:relative}
html body.pub-light .pub-links a:hover{color:var(--brand-text)!important;background:var(--brand-hi)!important}
html body.pub-light .pub-links a:hover::after{content:"";position:absolute;left:14px;right:14px;bottom:4px;height:2px;border-radius:2px;background:var(--brand-accent)}
html body.pub-light .pub-links a.active{color:var(--brand-text)!important;background:rgba(255,255,255,.2)!important;font-weight:700}
html body.pub-light .pub-links a i{color:inherit!important}
html body.pub-light .pub-burger{background:rgba(255,255,255,.12)!important;border-color:rgba(255,255,255,.3)!important;color:var(--brand-text)!important}
@media(max-width:767px){
  html body.pub-light .pub-links{background:linear-gradient(180deg,var(--brand),var(--brand-2))!important;border-bottom-color:rgba(0,0,0,.2)!important}
}

/* ── 2) Section title bands: one brand colour (delete this section to restore multi-colour bands) ── */
html body.pub-light .pub-sec-title[data-band]{
  background:linear-gradient(90deg,var(--brand) 0%,var(--brand-2) 100%)!important;
  box-shadow:0 6px 16px rgba(15,74,55,.22),inset 0 1px 0 rgba(255,255,255,.14)!important;
  color:var(--brand-text)!important;
}
html body.pub-light .pub-sec-title[data-band]::after{
  content:"";display:block;width:34px;height:3px;border-radius:3px;background:var(--brand-accent);order:-1;margin-right:2px}
html body.pub-light .pub-sec-title[data-band] .count{background:rgba(255,255,255,.18)!important;color:var(--brand-text)!important}

/* ── 3) Card headings ── */
html body.pub-light .ss-card-head,
html body.pub-light .ss-card-head[data-band]{
  background:linear-gradient(90deg,var(--brand) 0%,var(--brand-2) 100%)!important;
  color:var(--brand-text)!important;border-bottom:none!important;
  border-top-left-radius:inherit;border-top-right-radius:inherit;
}
html body.pub-light .ss-card-head *,html body.pub-light .ss-card-head[data-band] *{color:var(--brand-text)!important}
html body.pub-light .ss-card-head i{color:var(--brand-accent)!important}

/* ── 4) Scorecard / points-table / leaders headers ── */
html body.pub-light .mx-inn-head{
  background:linear-gradient(90deg,var(--brand) 0%,var(--brand-2) 100%)!important;
  border-color:var(--brand-2)!important;color:var(--brand-text)!important;border-radius:12px 12px 0 0;
}
html body.pub-light .mx-inn-head *{color:var(--brand-text)!important}
html body.pub-light .mx-inn-head i{color:var(--brand-accent)!important}
html body.pub-light .mx-inn-head .s small{color:rgba(255,255,255,.75)!important}

/* ── 5) Active tab underline + win bar icon in brand colour ── */
html body.pub-light .mx-tab.active{color:var(--brand)!important;box-shadow:inset 0 -3px 0 var(--brand)!important}
html body.pub-light .wp-head i{color:var(--brand)!important}

/* ── 6) Footer ── */
html body.pub-light .pub-footer{
  background:linear-gradient(90deg,var(--brand-2) 0%,var(--brand) 100%)!important;
  border-top:none!important;color:rgba(255,255,255,.75)!important;
}
html body.pub-light .pub-footer a{color:var(--brand-accent)!important}
html body.pub-light .pub-footer *{border-color:rgba(255,255,255,.15)!important}

/* ── 7) Home: hero + stats + live now in one row ── */
.pt-top{display:grid;grid-template-columns:1.35fr 1fr 1.15fr;gap:16px;align-items:stretch;margin-bottom:22px}
.pt-top > *{margin:0!important;min-width:0}
.pt-top .pub-hero{height:100%;display:flex;align-items:center}
.pt-top .pub-hero h1{font-size:clamp(1.3rem,2.1vw,1.85rem)!important;line-height:1.15}
.pt-top .pt-stats-card{height:100%;display:flex;align-items:stretch;padding:0!important;overflow:hidden}
.pt-top .pt-stats-grid{display:grid!important;grid-template-columns:1fr 1fr;width:100%;height:100%;margin:0!important}
.pt-top .pt-stats-grid .pub-stat{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;
  padding:16px 8px!important;border-right:1px solid #eeeeea!important;border-bottom:1px solid #eeeeea!important;min-height:92px}
.pt-top .pt-stats-grid .pub-stat:nth-child(2n){border-right:none!important}
.pt-top .pt-stats-grid .pub-stat:nth-last-child(-n+2){border-bottom:none!important}
.pt-top .pt-stats-grid .pub-stat .v{font-size:1.9rem!important}
.pt-live{display:flex;flex-direction:column;gap:10px;min-width:0}
.pt-live > .pub-sec-title{margin:0!important}
.pt-live > :last-child:not(.pub-sec-title){flex:1;margin:0!important;display:flex;flex-direction:column;justify-content:center}
/* a match is live -> the scoreboard needs the full width */
.pt-top.has-live{grid-template-columns:1.35fr 1fr}
.pt-top.has-live .pt-live{grid-column:1 / -1}
.pt-top.has-live .pt-live > :last-child{display:block}
@media(max-width:1199px){
  .pt-top{grid-template-columns:1.3fr 1fr}
  .pt-top .pt-live{grid-column:1 / -1}
  .pt-top .pt-live > :last-child{min-height:0}
}
@media(max-width:767px){
  .pt-top,.pt-top.has-live{grid-template-columns:1fr}
}

/* ── 8) Home: Recent Results + Upcoming Fixtures side by side ── */
.pt-duo{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start;margin-bottom:10px}
.pt-duo .pt-col{min-width:0;display:flex;flex-direction:column}
.pt-duo .pt-col > .pub-sec-title{margin-top:22px!important;margin-bottom:12px!important}
/* the card list inside each column re-flows on its own */
.pt-duo .pt-col > :not(.pub-sec-title){
  display:grid!important;grid-template-columns:repeat(auto-fill,minmax(235px,1fr))!important;gap:12px!important;
  margin:0!important;width:100%!important}
/* neutralise Bootstrap .row / .col-* wrappers if the list uses them */
.pt-duo .pt-col > :not(.pub-sec-title) > *{width:auto!important;max-width:none!important;flex:none!important;padding-left:0!important;padding-right:0!important;margin:0!important}
.pt-duo .pt-col .mc-card{height:100%}
@media(max-width:991px){
  .pt-duo{grid-template-columns:1fr}
}

/* ── 9) Home top row: compact ── */
.pt-top{gap:12px!important;margin-bottom:16px!important}

/* Club card: logo beside the text, tighter spacing */
html body.pub-light .pt-top .pub-hero{padding:14px 18px!important;min-height:0!important;gap:14px!important;
  flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important}
html body.pub-light .pt-top .pub-hero :has(> .pub-hero-logo){display:flex!important;flex-direction:row!important;align-items:center!important;gap:14px!important}
html body.pub-light .pt-top .pub-hero::before,html body.pub-light .pt-top .pub-hero::after{display:none!important}
html body.pub-light .pt-top .pub-hero-logo{width:56px!important;height:56px!important;min-width:56px;border-radius:14px!important;font-size:.95rem!important;margin:0!important}
html body.pub-light .pt-top .pub-hero-logo img{width:100%;height:100%;object-fit:contain}
html body.pub-light .pt-top .pub-hero h1{font-size:1.2rem!important;margin:2px 0 2px!important;line-height:1.2}
html body.pub-light .pt-top .pub-hero .sub{font-size:.78rem!important;margin:0 0 8px!important}
html body.pub-light .pt-top .pub-hero [class*="kicker"],html body.pub-light .pt-top .pub-hero [class*="tag"]{font-size:.58rem!important;margin:0!important}
html body.pub-light .pt-top .pub-pill{padding:3px 9px!important;font-size:.62rem!important}
html body.pub-light .pt-top .pub-hero .btn{padding:3px 10px!important;font-size:.72rem!important}
html body.pub-light .pt-top .pub-contact{font-size:.72rem!important;margin-top:6px!important}

/* Stats 2x2: smaller cells */
html body.pub-light .pt-top .pt-stats-grid .pub-stat{min-height:62px!important;padding:8px 6px!important}
html body.pub-light .pt-top .pt-stats-grid .pub-stat .v{font-size:1.4rem!important;line-height:1.1}
html body.pub-light .pt-top .pt-stats-grid .pub-stat .l{font-size:.56rem!important;margin-top:2px;letter-spacing:.12em}

/* Live Now: slimmer band + compact empty card */
html body.pub-light .pt-top .pt-live{gap:8px!important}
html body.pub-light .pt-top .pt-live > .pub-sec-title[data-band]{padding:9px 16px!important;min-height:0!important;font-size:.82rem!important;border-radius:12px!important}
html body.pub-light .pt-top:not(.has-live) .pt-live > :last-child{padding:12px 14px!important}
html body.pub-light .pt-top:not(.has-live) .pub-empty{padding:6px 4px!important}
html body.pub-light .pt-top:not(.has-live) .pub-empty i{font-size:1.25rem!important;margin-bottom:4px!important}
html body.pub-light .pt-top:not(.has-live) .pub-empty .t{font-size:.82rem!important;margin-bottom:2px}
html body.pub-light .pt-top:not(.has-live) .pub-empty .small,
html body.pub-light .pt-top:not(.has-live) .pub-empty p{font-size:.68rem!important;line-height:1.35;margin:0}

@media(max-width:575px){
  html body.pub-light .pt-top .pub-hero{padding:12px 14px!important}
  html body.pub-light .pt-top .pub-hero-logo{width:46px!important;height:46px!important;min-width:46px}
}

/* ── 10) Home top row: extra compact ── */
html body.pub-light .pt-top{margin:0 0 12px!important;gap:10px!important}
html body.pub-light .pt-top .pub-hero{padding:10px 14px!important;gap:12px!important}
html body.pub-light .pt-top .pub-hero-logo{width:42px!important;height:42px!important;min-width:42px;border-radius:11px!important;font-size:.78rem!important}
html body.pub-light .pt-top .pub-hero h1{font-size:1rem!important;margin:0 0 1px!important}
html body.pub-light .pt-top .pub-hero .sub{font-size:.7rem!important;margin:0 0 5px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
html body.pub-light .pt-top .pub-hero [class*="kicker"],html body.pub-light .pt-top .pub-hero [class*="tag"]{display:none!important}
html body.pub-light .pt-top .pub-contact{display:none!important}
html body.pub-light .pt-top .pub-pill{padding:2px 8px!important;font-size:.56rem!important}
html body.pub-light .pt-top .pub-hero .btn{padding:2px 8px!important;font-size:.64rem!important}
html body.pub-light .pt-top .pt-stats-grid .pub-stat{min-height:44px!important;padding:5px 4px!important;cursor:pointer;transition:background .15s}
html body.pub-light .pt-top .pt-stats-grid .pub-stat:hover{background:#ecfdf5!important}
html body.pub-light .pt-top .pt-stats-grid .pub-stat .v{font-size:1.1rem!important}
html body.pub-light .pt-top .pt-stats-grid .pub-stat .l{font-size:.5rem!important}
html body.pub-light .pt-top .pt-stats-grid .pub-stat .l::after{content:" ›";font-weight:800;color:var(--brand,#155E46)}
html body.pub-light .pt-top .pt-live{gap:6px!important}
html body.pub-light .pt-top .pt-live > .pub-sec-title[data-band]{padding:6px 14px!important;font-size:.72rem!important}
html body.pub-light .pt-top:not(.has-live) .pt-live > :last-child{padding:6px 10px!important}
html body.pub-light .pt-top:not(.has-live) .pub-empty i{font-size:1rem!important;margin:0!important}
html body.pub-light .pt-top:not(.has-live) .pub-empty .t{font-size:.72rem!important}
html body.pub-light .pt-top:not(.has-live) .pub-empty .small,
html body.pub-light .pt-top:not(.has-live) .pub-empty p{display:none!important}

/* ── 11) Stats popup report ── */
.ssr-ov{position:fixed;inset:0;z-index:2000;background:rgba(6,18,26,.55);backdrop-filter:blur(2px);display:flex;align-items:flex-start;justify-content:center;padding:6vh 14px}
.ssr-ov[hidden]{display:none}
.ssr-box{width:100%;max-width:960px;max-height:86vh;display:flex;flex-direction:column;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.35);animation:ssrIn .18s ease}
@keyframes ssrIn{from{transform:translateY(10px);opacity:0}to{transform:none;opacity:1}}
.ssr-head{display:flex;align-items:center;gap:10px;padding:12px 16px;color:#fff;background:linear-gradient(90deg,var(--brand,#155E46),var(--brand-2,#0F4A37))}
.ssr-head .t{font-family:var(--ff-head,sans-serif);font-weight:800;letter-spacing:.1em;text-transform:uppercase;font-size:.95rem}
.ssr-head .c{padding:2px 10px;border-radius:999px;background:rgba(255,255,255,.2);font-family:var(--ff-mono,monospace);font-size:.74rem}
.ssr-head button{margin-left:auto;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.12);color:#fff;border-radius:9px;padding:5px 11px;font-size:.8rem;cursor:pointer}
.ssr-head button + button{margin-left:6px}
.ssr-head button:hover{background:rgba(255,255,255,.24)}
.ssr-body{overflow:auto;padding:0}
.ssr-load{padding:40px;text-align:center;color:#6b7280}
.ssr-table{margin:0}
.ssr-table th,.ssr-table td{text-align:center!important;white-space:nowrap}
.ssr-table th.l,.ssr-table td.l{text-align:left!important;white-space:normal}
.ssr-table td.b{font-weight:800}
.ssr-table thead th{position:sticky;top:0;z-index:1}
.ssr-none{padding:24px!important;color:#9ca3af}
@media print{
  body.ssr-printing > *:not(.ssr-ov){display:none!important}
  body.ssr-printing .ssr-ov{position:static;background:none;padding:0;display:block}
  body.ssr-printing .ssr-box{max-height:none;box-shadow:none;border-radius:0}
  body.ssr-printing .ssr-head button{display:none}
  body.ssr-printing .ssr-body{overflow:visible}
}

/* ── 13) Home: no "Live Now" section — top row = club card + stats ── */
html body.pub-light .pt-top{grid-template-columns:1.35fr 1fr!important}
html body.pub-light .pt-top .pt-live{display:none!important}
@media(max-width:767px){html body.pub-light .pt-top{grid-template-columns:1fr!important}}
