/* NIPGL Division Widget CSS - v4.8 */

/* ── CSS Variables ───────────────────────────────────────────────────────────── */
/* Declared on both :root (for the modal overlay which is outside .lgw-w)        */
/* AND on the widget wrappers themselves, so all colours resolve from the widget  */
/* scope and are immune to WordPress theme colour inheritance.                   */
:root,
.lgw-w,
.lgw-widget-wrap {
  --lgw-bg:         #ffffff;
  --lgw-bg-alt:     #f0f2f8;
  --lgw-bg-hover:   #e6e9f5;
  --lgw-border:     #d0d5e8;
  --lgw-navy:       #1a2e5a;
  --lgw-navy-mid:   #243d78;
  --lgw-red:        #c0202a;
  --lgw-gold:       #e8b400;
  --lgw-text:       #1a1a1a;
  --lgw-text-muted: #666666;
  --lgw-pts:        #8f1520;
  --lgw-pos:        #999999;
  --lgw-tab-bg:     #dde1ef;
  --lgw-promote:    #2a7a2a;
  --lgw-promote-bg: #f0faf0;
  --lgw-promote-cl: #c8edc8;
  --lgw-relegate-bg:#fff5f5;
  --lgw-relegate-cl:#f5c8c8;
  --lgw-win:        #2a7a2a;
  --lgw-loss:       #c0202a;
  --lgw-shadow:     rgba(0,0,0,.10);
}

/* Dark mode — OS preference, no manual override */
@media(prefers-color-scheme:dark){
  :root:not([data-lgw-theme]):not(.lgw-light-root),
  :root:not([data-lgw-theme]):not(.lgw-light-root) .lgw-w,
  :root:not([data-lgw-theme]):not(.lgw-light-root) .lgw-widget-wrap {
    --lgw-bg:         #1e1e2e;
    --lgw-bg-alt:     #2a2a3e;
    --lgw-bg-hover:   #32324a;
    --lgw-border:     #3a3a55;
    --lgw-navy:       #4a6fa5;
    --lgw-navy-mid:   #5a80b5;
    --lgw-red:        #e05060;
    --lgw-gold:       #f0c830;
    --lgw-text:       #e8e8f0;
    --lgw-text-muted: #aaaacc;
    --lgw-pts:        #e05060;
    --lgw-pos:        #7777aa;
    --lgw-tab-bg:     #2a2a3e;
    --lgw-promote:    #4aaa4a;
    --lgw-promote-bg: #1a2e1a;
    --lgw-promote-cl: #1e3e1e;
    --lgw-relegate-bg:#2e1a1a;
    --lgw-relegate-cl:#3e1e1e;
    --lgw-win:        #4aaa4a;
    --lgw-loss:       #e05060;
    --lgw-shadow:     rgba(0,0,0,.4);
  }
}

/* Manual dark override */
:root[data-lgw-theme="dark"],
:root[data-lgw-theme="dark"] .lgw-w,
:root[data-lgw-theme="dark"] .lgw-widget-wrap {
  --lgw-bg:         #1e1e2e;
  --lgw-bg-alt:     #2a2a3e;
  --lgw-bg-hover:   #32324a;
  --lgw-border:     #3a3a55;
  --lgw-navy:       #4a6fa5;
  --lgw-navy-mid:   #5a80b5;
  --lgw-red:        #e05060;
  --lgw-gold:       #f0c830;
  --lgw-text:       #e8e8f0;
  --lgw-text-muted: #aaaacc;
  --lgw-pts:        #e05060;
  --lgw-pos:        #7777aa;
  --lgw-tab-bg:     #2a2a3e;
  --lgw-promote:    #4aaa4a;
  --lgw-promote-bg: #1a2e1a;
  --lgw-promote-cl: #1e3e1e;
  --lgw-relegate-bg:#2e1a1a;
  --lgw-relegate-cl:#3e1e1e;
  --lgw-win:        #4aaa4a;
  --lgw-loss:       #e05060;
  --lgw-shadow:     rgba(0,0,0,.4);
}

/* Manual light override */
:root[data-lgw-theme="light"],
:root[data-lgw-theme="light"] .lgw-w,
:root[data-lgw-theme="light"] .lgw-widget-wrap {
  --lgw-bg:         #ffffff;
  --lgw-bg-alt:     #f0f2f8;
  --lgw-bg-hover:   #e6e9f5;
  --lgw-border:     #d0d5e8;
  --lgw-navy:       #1a2e5a;
  --lgw-navy-mid:   #243d78;
  --lgw-red:        #c0202a;
  --lgw-gold:       #e8b400;
  --lgw-text:       #1a1a1a;
  --lgw-text-muted: #666666;
  --lgw-pts:        #8f1520;
  --lgw-pos:        #999999;
  --lgw-tab-bg:     #dde1ef;
  --lgw-promote:    #2a7a2a;
  --lgw-promote-bg: #f0faf0;
  --lgw-promote-cl: #c8edc8;
  --lgw-relegate-bg:#fff5f5;
  --lgw-relegate-cl:#f5c8c8;
  --lgw-win:        #2a7a2a;
  --lgw-loss:       #c0202a;
  --lgw-shadow:     rgba(0,0,0,.10);
}

/* ── Title bar ───────────────────────────────────────────────────────────────── */
.lgw-title{font-family:'Saira',Arial,sans-serif;font-size:18px;font-weight:700;color:#fff;background:var(--lgw-navy);padding:10px 16px;border-radius:6px 6px 0 0;letter-spacing:.03em;max-width:960px;margin:0 auto;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between}
.lgw-title + .lgw-w .lgw-tabs .lgw-tab{border-radius:0}
.lgw-title + .lgw-w{border-radius:0 0 6px 6px;margin-top:0}

/* ── Widget shell ────────────────────────────────────────────────────────────── */
/* Explicitly declare text colour so WordPress theme inheritance can't bleed in */
.lgw-w{font-family:'Saira',Arial,sans-serif;width:100%;color:var(--lgw-text)}
.lgw-w *{box-sizing:border-box;margin:0;padding:0}

/* ── Tabs ────────────────────────────────────────────────────────────────────── */
.lgw-tabs{display:flex;gap:3px;margin-bottom:0;align-items:flex-end}
.lgw-tab{flex:1;padding:9px 8px;font-size:13px;font-weight:700;text-align:center;cursor:pointer;background:var(--lgw-tab-bg);color:var(--lgw-navy);border:1px solid var(--lgw-border);border-bottom:none;border-radius:6px 6px 0 0;transition:background .15s;user-select:none}
.lgw-tab.active{background:var(--lgw-navy);color:#fff}
.lgw-darkmode-btn{margin-left:auto;padding:6px 10px;font-size:12px;font-weight:700;cursor:pointer;background:var(--lgw-tab-bg);color:var(--lgw-navy);border:1px solid var(--lgw-border);border-bottom:none;border-radius:6px 6px 0 0;user-select:none;transition:background .15s;white-space:nowrap}
.lgw-darkmode-btn:hover{background:var(--lgw-bg-hover)}

/* ── Panels ──────────────────────────────────────────────────────────────────── */
.lgw-panel{display:none;background:var(--lgw-bg);color:var(--lgw-text);border-radius:0 0 6px 6px;box-shadow:0 2px 8px var(--lgw-shadow);overflow:hidden}
.lgw-panel.active{display:block}
.lgw-status{font-size:13px;color:var(--lgw-text-muted);padding:20px;text-align:center}
.lgw-status small{display:block;margin-top:8px;font-family:monospace;background:#f8f0f0;padding:8px;border-radius:4px;text-align:left;word-break:break-all}
.lgw-status-error{color:#842029;background:#f8d7da;border-radius:6px;border:1px solid #f1aeb5}

/* Print button inside panel */
.lgw-print-btn{display:flex;align-items:center;gap:5px;padding:6px 12px;font-size:12px;font-weight:700;cursor:pointer;background:var(--lgw-bg-alt);color:var(--lgw-navy);border:none;border-bottom:1px solid var(--lgw-border);width:100%;font-family:'Saira',Arial,sans-serif}
.lgw-print-btn:hover{background:var(--lgw-bg-hover)}
.lgw-print-btn svg{width:14px;height:14px;fill:currentColor;flex-shrink:0}

/* ── League table ────────────────────────────────────────────────────────────── */
.tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
table.lg{width:100%;border-collapse:collapse;font-size:13px}
/* ── League table ────────────────────────────────────────────────────────────── */
/* Scoped under .lgw-w to raise specificity above typical WP theme rules         */
/* (.entry-content table td etc) without needing !important                      */
.lgw-w table.lg th{background:var(--lgw-navy);color:#fff;padding:7px 6px;font-size:11px;font-weight:700;letter-spacing:.05em;white-space:nowrap;text-align:center}
.lgw-w table.lg th.ct{text-align:left}
.lgw-w table.lg td{padding:7px 6px;text-align:center;border-bottom:1px solid var(--lgw-border);white-space:nowrap;color:var(--lgw-text);background:var(--lgw-bg)}
.lgw-w table.lg td.cp{font-weight:700;color:var(--lgw-pos);width:36px;background:var(--lgw-bg)}
.lgw-w table.lg td.ct{text-align:left;font-weight:600;padding-left:10px;background:var(--lgw-bg);color:var(--lgw-text)}
.lgw-w table.lg td.ck{font-weight:700;color:var(--lgw-pts)}
.lgw-w table.lg tr:nth-child(even) td{background:var(--lgw-bg-alt)}
.lgw-w table.lg tr:nth-child(even) td.cp,.lgw-w table.lg tr:nth-child(even) td.ct{background:var(--lgw-bg-alt)}
.lgw-w table.lg tr:hover td{background:var(--lgw-bg-hover)}
.lgw-w table.lg tr:hover td.cp,.lgw-w table.lg tr:hover td.ct{background:var(--lgw-bg-hover)}

/* ── Sponsor bars ────────────────────────────────────────────────────────────── */
.lgw-widget-wrap{display:block;width:100%;max-width:960px;margin:0 auto;box-sizing:border-box}
.lgw-sponsor-bar{text-align:center;padding:10px;background:var(--lgw-bg);border:1px solid var(--lgw-border);border-radius:6px;margin-bottom:4px;box-sizing:border-box}

.lgw-sponsor-primary{border-bottom:none;border-radius:6px 6px 0 0;margin-bottom:0}
.lgw-sponsor-secondary{border-top:none;border-radius:0 0 6px 6px;margin-top:0;border-top:1px solid var(--lgw-border)}
.lgw-sponsor-bar a{display:inline-block}
.lgw-sponsor-img{max-height:60px;max-width:240px;object-fit:contain;display:inline-block}

/* ── Promotion / relegation zones ───────────────────────────────────────────── */
.lgw-w table.lg tr.row-promote-zone td{background:var(--lgw-promote-bg)}
.lgw-w table.lg tr.row-promote-zone td.cp,.lgw-w table.lg tr.row-promote-zone td.ct{background:var(--lgw-promote-bg)}
.lgw-w table.lg tr.row-promote-zone td:first-child{border-left:4px solid var(--lgw-promote)}
.lgw-w table.lg tr.row-promoted td{background:var(--lgw-promote-cl) !important}
.lgw-w table.lg tr.row-promoted td:first-child{border-left:4px solid var(--lgw-promote)}
.lgw-w table.lg tr.row-relegate-zone td{background:var(--lgw-relegate-bg)}
.lgw-w table.lg tr.row-relegate-zone td.cp,.lgw-w table.lg tr.row-relegate-zone td.ct{background:var(--lgw-relegate-bg)}
.lgw-w table.lg tr.row-relegate-zone td:first-child{border-left:4px solid var(--lgw-red)}
.lgw-w table.lg tr.row-relegated td{background:var(--lgw-relegate-cl) !important}
.lgw-w table.lg tr.row-relegated td:first-child{border-left:4px solid var(--lgw-red)}
.lgw-w table.lg tr.zone-border-top td{border-top:2px solid var(--lgw-border)}

/* Accessibility symbols */
.lgw-w table.lg tr.row-promote-zone td.cp::before,
.lgw-w table.lg tr.row-promoted td.cp::before{content:'▲ ';font-size:9px;color:var(--lgw-promote)}
.lgw-w table.lg tr.row-relegate-zone td.cp::before,
.lgw-w table.lg tr.row-relegated td.cp::before{content:'▼ ';font-size:9px;color:var(--lgw-red)}

/* ── Legend ──────────────────────────────────────────────────────────────────── */
.lg-legend{display:flex;gap:16px;padding:8px 10px;font-size:12px;font-family:'Saira',Arial,sans-serif;color:var(--lgw-text-muted);background:var(--lgw-bg);border-top:1px solid var(--lgw-border)}
.lg-key{display:inline-block;width:12px;height:12px;border-radius:2px;margin-right:5px;vertical-align:middle}
.lg-key-promote{background:var(--lgw-promote)}
.lg-key-relegate{background:var(--lgw-red)}

/* ── Fixtures ────────────────────────────────────────────────────────────────── */
.fix-filter{display:flex;gap:6px;padding:10px;border-bottom:1px solid var(--lgw-border);flex-wrap:wrap}
.fix-filter button{font-size:11px;font-weight:700;padding:4px 10px;border-radius:20px;border:1px solid var(--lgw-border);background:var(--lgw-bg-alt);color:var(--lgw-navy);cursor:pointer;transition:background .15s}
.fix-filter button.active,.fix-filter button:hover{background:var(--lgw-red);color:#fff;border-color:var(--lgw-red)}
.date-group{border-bottom:2px solid var(--lgw-border)}
.date-group:last-child{border-bottom:none}
.date-hdr{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--lgw-red);padding:6px 14px}
.fx-row{display:grid;grid-template-columns:36px 1fr auto 1fr 36px;align-items:center;gap:4px;padding:8px 10px;border-bottom:1px solid var(--lgw-border);font-size:13px;color:var(--lgw-text);background:var(--lgw-bg)}
.fx-row:last-child{border-bottom:none}
.fx-row:hover{background:var(--lgw-bg-alt)}
.fx-ph,.fx-pa{font-size:13px;font-weight:800;color:var(--lgw-text-muted);text-align:center;line-height:1.2}
.fx-row.played .fx-ph,.fx-row.played .fx-pa{background:var(--lgw-pts);color:#fff;border-radius:4px;min-width:22px;padding:2px 4px;font-size:13px}
.fx-h{text-align:right;font-weight:600}
.fx-a{text-align:left;font-weight:600}
.fx-sc{display:flex;align-items:center;justify-content:center;white-space:nowrap}
.fx-sb{background:var(--lgw-bg-alt);border:1px solid var(--lgw-border);border-radius:3px;min-width:26px;padding:2px 5px;text-align:center;font-weight:700;font-size:14px;color:var(--lgw-navy)}
.fx-sep{padding:0 4px;color:var(--lgw-text-muted);font-size:12px}
.fx-time{grid-column:1/-1;text-align:right;font-size:11px;color:var(--lgw-gold);font-weight:700;padding:0 2px 4px;margin-top:-4px}
.fx-row.played .fx-sb{background:var(--lgw-navy);color:#fff;border-color:var(--lgw-navy-mid)}

/* ── Badges ──────────────────────────────────────────────────────────────────── */
.lgw-badge{width:24px;height:24px;object-fit:contain;vertical-align:middle;margin-right:5px;border-radius:2px}
table.lg .lgw-badge{width:20px;height:20px}

/* ── Team link ───────────────────────────────────────────────────────────────── */
.lgw-team-link{cursor:pointer}
.lgw-team-link:hover{text-decoration:underline}

/* ── Mobile table ────────────────────────────────────────────────────────────── */
@media(max-width:600px){
  /* Sticky pos column */
  .lgw-w table.lg th.cp,.lgw-w table.lg td.cp{position:sticky;left:0;z-index:2}
  .lgw-w table.lg th.cp{background:var(--lgw-navy) !important}
  /* Sticky team column */
  .lgw-w table.lg th.ct,.lgw-w table.lg td.ct{position:sticky;left:36px;z-index:2}
  .lgw-w table.lg th.ct{background:var(--lgw-navy) !important}
  /* Clipping: hide content scrolling behind sticky columns */
  .tbl-wrap{overflow-x:auto;overflow-y:visible}
  .lgw-w table.lg th.cp::after,.lgw-w table.lg td.cp::after{content:'';position:absolute;top:0;right:-1px;bottom:0;width:1px;background:var(--lgw-border)}
  .lgw-w table.lg th.ct::after,.lgw-w table.lg td.ct::after{content:'';position:absolute;top:0;right:-4px;bottom:0;width:4px;background:linear-gradient(to right,var(--lgw-border),transparent)}
  /* Ensure sticky cells always have solid backgrounds matching their row */
  .lgw-w table.lg td.cp,.lgw-w table.lg td.ct{background:var(--lgw-bg)}
  .lgw-w table.lg tr:nth-child(even) td.cp,.lgw-w table.lg tr:nth-child(even) td.ct{background:var(--lgw-bg-alt)}
  .lgw-w table.lg tr:hover td.cp,.lgw-w table.lg tr:hover td.ct{background:var(--lgw-bg-hover)}
  .lgw-w table.lg tr.row-promote-zone td.cp,.lgw-w table.lg tr.row-promote-zone td.ct{background:var(--lgw-promote-bg) !important}
  .lgw-w table.lg tr.row-promoted td.cp,.lgw-w table.lg tr.row-promoted td.ct{background:var(--lgw-promote-cl) !important}
  .lgw-w table.lg tr.row-relegate-zone td.cp,.lgw-w table.lg tr.row-relegate-zone td.ct{background:var(--lgw-relegate-bg) !important}
  .lgw-w table.lg tr.row-relegated td.cp,.lgw-w table.lg tr.row-relegated td.ct{background:var(--lgw-relegate-cl) !important}
  /* Badge stacking in team column */
  .lgw-w table.lg td.ct{display:flex;flex-direction:column;align-items:flex-start;gap:2px;white-space:normal;min-width:90px;max-width:130px}
  .lgw-w table.lg td.ct .lgw-badge{margin-right:0;width:22px;height:22px}
  .lgw-w table.lg th.ct{min-width:100px}
  /* Fixture rows on mobile */
  .fx-h,.fx-a{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-size:12px}
  .fx-a{align-items:flex-start}
  .fx-h .lgw-badge,.fx-a .lgw-badge{margin-right:0;width:22px;height:22px}
  .fx-row{grid-template-columns:28px 1fr auto 1fr 28px;gap:2px;padding:6px 6px}
  .fx-sb{min-width:22px;font-size:13px}
}

/* ── Modal overlay ───────────────────────────────────────────────────────────── */
/* Explicit top/right/bottom/left instead of inset shorthand for Brave compatibility.  */
/* flex-start + padding-top instead of center prevents header clipping on non-standard viewports */
.lgw-modal-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.55);z-index:99999;align-items:flex-start;justify-content:center;padding:48px 16px 16px;overflow-y:auto}
.lgw-modal-overlay.active{display:flex}
body.lgw-modal-open{overflow:hidden}

/* ── Modal box — uses :root vars so always has solid background ──────────────── */
.lgw-modal{background:var(--lgw-bg);color:var(--lgw-text);border-radius:8px;width:100%;max-width:580px;max-height:calc(100vh - 80px);display:flex;flex-direction:column;box-shadow:0 8px 32px rgba(0,0,0,.35);font-family:'Saira',Arial,sans-serif;margin:0 auto}
.lgw-modal-head{display:flex;align-items:center;justify-content:space-between;background:var(--lgw-navy);color:#fff;padding:12px 16px;border-radius:8px 8px 0 0;gap:10px}
.lgw-modal-title{display:flex;align-items:center;gap:10px;flex:1;min-width:0}
.lgw-modal-title h2{margin:0;font-size:16px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lgw-modal-badge{width:36px;height:36px;object-fit:contain;flex-shrink:0}
.lgw-modal-actions{display:flex;gap:6px;flex-shrink:0}
.lgw-modal-print,.lgw-modal-close{background:rgba(255,255,255,.15);border:none;color:#fff;width:32px;height:32px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}
.lgw-modal-print:hover,.lgw-modal-close:hover{background:rgba(255,255,255,.3)}
.lgw-modal-print svg{width:16px;height:16px;fill:#fff}
.lgw-modal-close{font-size:22px;line-height:1}
.lgw-modal-body{overflow-y:auto;padding:16px;flex:1;color:var(--lgw-text);background:var(--lgw-bg)}

/* ── Modal stats bar ─────────────────────────────────────────────────────────── */
.modal-stat-bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}
.modal-stat{background:var(--lgw-bg-alt);border-radius:4px;padding:6px 10px;text-align:center;min-width:48px}
.modal-stat-val{font-size:18px;font-weight:700;color:var(--lgw-navy);line-height:1.1}
.modal-stat-lbl{font-size:10px;color:var(--lgw-text-muted);text-transform:uppercase;letter-spacing:.04em}

/* ── Modal fixture table ─────────────────────────────────────────────────────── */
.modal-fix-table{width:100%;border-collapse:collapse;font-size:13px}
.modal-fix-table th{background:var(--lgw-navy);color:#fff;padding:6px 8px;text-align:left;font-size:11px;letter-spacing:.05em}
.modal-fix-table td{padding:7px 8px;border-bottom:1px solid var(--lgw-border);color:var(--lgw-text);background:var(--lgw-bg)}
.modal-fix-table tr:last-child td{border-bottom:none}
.modal-fix-table tr:nth-child(even) td{background:var(--lgw-bg-alt)}
.modal-fix-table tr.res td{color:var(--lgw-win);font-weight:600}
.modal-fix-table tr.lost td{color:var(--lgw-loss)}
.modal-fix-table .lgw-badge{width:18px;height:18px;margin-right:4px;vertical-align:middle}
.modal-result-lbl{font-size:10px;font-weight:700;border-radius:3px;padding:1px 4px;margin-left:4px;vertical-align:middle}
.res .modal-result-lbl{background:var(--lgw-win);color:#fff}
.drew .modal-result-lbl{background:var(--lgw-text-muted);color:#fff}
.lost .modal-result-lbl{background:var(--lgw-loss);color:#fff}

@media(max-width:480px){
  .lgw-modal-overlay{padding:32px 8px 8px}
  .lgw-modal{max-height:calc(100vh - 48px)}
  .modal-stat{padding:5px 7px;min-width:40px}
  .modal-stat-val{font-size:15px}
}

/* ── Print styles ────────────────────────────────────────────────────────────── */
@media print{
  .lgw-tabs,.fix-filter,.lgw-darkmode-btn,.lgw-print-btn{display:none !important}
  .lgw-panel{display:block !important;box-shadow:none}
  .lgw-widget-wrap{max-width:100%}
  .lgw-w{max-width:100%}
  .lgw-badge,.lgw-modal-badge{max-width:32px !important;max-height:32px !important;width:32px !important;height:32px !important}
  .lgw-sponsor-img{max-height:48px !important;max-width:160px !important}
}

/* Played fixture rows are clickable for scorecard */
.fx-row.played[data-home]:hover{background:var(--lgw-bg-hover);cursor:pointer}
.fx-row.played[data-home]::after{content:'📋';font-size:11px;position:absolute;right:8px;top:50%;transform:translateY(-50%);opacity:.4}
.fx-row{position:relative}

/* ── Team modal: clickable fixture rows + inline scorecard ───────────────────── */
.modal-fx-row[data-home]{cursor:pointer;transition:background .15s}
.modal-fx-row[data-home]:hover td{background:var(--lgw-bg-hover)}
.modal-sc-hint{font-size:11px;opacity:.5;margin-left:4px;pointer-events:none;vertical-align:middle}
.modal-fx-row[data-home]:hover .modal-sc-hint{opacity:1}
.modal-sc-row td{padding:0 !important;background:var(--lgw-bg-alt) !important}
.modal-sc-inline{padding:12px 16px;border-top:2px solid var(--lgw-primary);border-bottom:2px solid var(--lgw-primary)}

/* Compact scorecard styling when shown inside the team modal table */
.modal-sc-inline .lgw-sc-full{font-size:13px}
.modal-sc-inline .lgw-sc-rink{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--lgw-border)}
.modal-sc-inline .lgw-sc-rink:last-child{border-bottom:none}
.modal-sc-inline .lgw-sc-rink-hdr{font-weight:700;color:var(--lgw-primary);background:var(--lgw-bg-alt);min-width:44px;font-size:11px;text-transform:uppercase;padding:3px 8px;border-radius:3px}
.modal-sc-inline .lgw-sc-rink-body{display:flex;align-items:center;gap:8px;flex:1;flex-wrap:wrap}
.modal-sc-inline .lgw-sc-players{font-size:12px;color:var(--lgw-text-muted);min-width:100px;flex:1}
.modal-sc-inline .lgw-sc-player{line-height:1.4}
.modal-sc-inline .lgw-sc-scores{display:flex;align-items:center;gap:4px;font-weight:700;font-size:15px;white-space:nowrap}
.modal-sc-inline .lgw-sc-score.lgw-sc-win{color:var(--lgw-win)}
.modal-sc-inline .lgw-sc-sep{color:var(--lgw-text-muted);font-weight:400}
.modal-sc-inline .lgw-sc-totals{margin-top:8px;padding-top:8px;border-top:2px solid var(--lgw-border)}
.modal-sc-inline .lgw-sc-total-row{display:flex;gap:8px;align-items:center;font-size:13px;padding:2px 0}
.modal-sc-inline .lgw-sc-total-lbl{min-width:80px;color:var(--lgw-text-muted);font-size:11px;text-transform:uppercase}
.modal-sc-inline .lgw-sc-total-val{font-weight:700}
.modal-sc-inline .lgw-sc-total-val.lgw-sc-win{color:var(--lgw-win)}
.modal-sc-inline .lgw-sc-pts{font-size:15px}
.modal-sc-inline .lgw-sc-badge{display:inline-block;font-size:11px;font-weight:700;padding:2px 8px;border-radius:3px;margin-bottom:8px}
.modal-sc-inline .lgw-sc-badge-confirmed{background:#d4edda;color:#155724}
.modal-sc-inline .lgw-sc-badge-pending{background:#fff3cd;color:#856404}
.modal-sc-inline .lgw-sc-badge-disputed{background:#f8d7da;color:#721c24}
.modal-sc-inline .lgw-sc-meta{font-size:11px;color:var(--lgw-text-muted);margin-bottom:8px;display:flex;gap:12px;flex-wrap:wrap}
.modal-sc-inline .lgw-sc-none,.modal-sc-inline .lgw-sc-loading{color:var(--lgw-text-muted);font-size:13px;font-style:italic;padding:8px 0}

@media(max-width:480px){
  .modal-sc-inline .lgw-sc-players{min-width:70px;font-size:11px}
  .modal-sc-inline .lgw-sc-rink-body{gap:4px}
}

/* ── Pre-draw entry list ───────────────────────────────────────────────────── */
.lgw-entry-count{font-size:13px;color:var(--lgw-text-muted,#666);margin:8px 0 4px;font-weight:600}
.lgw-entry-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:4px 12px;margin:8px 0 4px;text-align:left;max-height:420px;overflow-y:auto;padding-right:4px}
.lgw-entry-row{display:flex;align-items:center;gap:7px;padding:4px 6px;border-radius:4px;background:var(--lgw-bg-alt,#f0f2f8)}
.lgw-entry-badge{width:22px;height:22px;object-fit:contain;flex-shrink:0}
.lgw-entry-badge-placeholder{width:22px;height:22px;flex-shrink:0;border-radius:50%;background:var(--lgw-border,#d0d5e8)}
.lgw-entry-name{font-size:13px;font-weight:600;color:var(--lgw-text,#1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lgw-entry-club{font-size:11px;color:var(--lgw-text-muted,#666);margin-left:auto;white-space:nowrap;flex-shrink:0}

/* ── Season switcher ───────────────────────────────────────────────────────── */
.lgw-season-switcher{display:flex;align-items:center;padding:6px 8px;background:var(--lgw-bg-alt);border:1px solid var(--lgw-border);border-bottom:none;border-radius:6px 6px 0 0;gap:8px}
.lgw-season-switcher::before{content:'Season:';font-size:12px;font-weight:700;font-family:'Saira',Arial,sans-serif;color:var(--lgw-text-muted);white-space:nowrap}
.lgw-season-select{font-family:'Saira',Arial,sans-serif;font-size:13px;font-weight:600;color:var(--lgw-navy);background:var(--lgw-bg);border:1px solid var(--lgw-border);border-radius:4px;padding:4px 8px;cursor:pointer;flex:1;max-width:220px}
.lgw-season-select:focus{outline:2px solid var(--lgw-navy);outline-offset:1px}
/* When switcher is present, flatten the top corners of the tab bar */
.lgw-season-switcher+.lgw-tabs .lgw-tab{border-radius:0}
.lgw-season-switcher+.lgw-tabs .lgw-darkmode-btn{border-radius:0}
/* Archive banner shown inside panels for past seasons */
.lgw-archive-banner{background:var(--lgw-bg-alt);border-bottom:1px solid var(--lgw-border);padding:6px 12px;font-size:12px;color:var(--lgw-text-muted);font-weight:600;font-family:'Saira',Arial,sans-serif}

/* ── Admin / visitor view toggle ───────────────────────────────────────────── */
.lgw-view-toggle-btn{font-size:11px;padding:0 10px;gap:4px;white-space:nowrap;background:var(--lgw-bg-alt);color:var(--lgw-navy);border-left:1px solid var(--lgw-border)}
.lgw-view-toggle-btn:hover{background:var(--lgw-border)}
/* When in visitor-preview mode, show a banner inside the widget */
.lgw-visitor-preview::before{
  content:'👁 Visitor view preview';
  display:block;
  background:#fff3cd;
  color:#856404;
  font-size:12px;
  font-weight:700;
  font-family:'Saira',Arial,sans-serif;
  padding:5px 12px;
  border-bottom:1px solid #ffc107;
  border-radius:0;
  text-align:center;
}
/* In visitor-preview mode, hide admin-only scorecard UI */
.lgw-visitor-preview .lgw-sc-admin-only{display:none!important}
