/* ── Live Score Page ── */
.lv-team-tabs{display:flex;background:var(--surf);border-bottom:2px solid var(--bdr);flex-shrink:0;}
.lvt-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;padding:12px 16px;
  border:none;background:none;font-size:14px;font-weight:700;color:var(--muted);cursor:pointer;
  border-bottom:3px solid transparent;margin-bottom:-2px;transition:color .15s,border-color .15s;
  font-family:-apple-system,sans-serif;}
.lvt-btn.lvt-on{color:var(--green);border-bottom-color:var(--green);}
.lvt-btn .team-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;}
.lv-body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;
  padding:12px 14px 100px;display:flex;flex-direction:column;gap:12px;}
/* Scoreboard */
.lv-sb{display:flex;align-items:stretch;background:var(--surf);border:1px solid var(--bdr);
  border-radius:14px;overflow:hidden;}
.lv-sb--g{border-top:4px solid var(--green);}
.lv-sb--w{border-top:4px solid #94a3b8;}
.lv-sb-side{flex:1;display:flex;flex-direction:column;align-items:center;padding:16px 10px;gap:4px;}
.lv-sb-side--opp{background:rgba(0,0,0,.02);}
.lv-sb-mid{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 8px;gap:5px;}
.lv-sb-name{display:flex;align-items:center;gap:5px;font-size:10px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;}
.lv-sb-name .team-dot{width:8px;height:8px;border-radius:50%;}
.lv-sb-score{font-family:-apple-system,'Roboto Condensed',sans-serif;font-size:30px;font-weight:800;color:var(--cream);line-height:1;}
.lv-sb-score--opp{color:var(--muted);}
.lv-sb-pts{font-size:11px;color:var(--muted);font-weight:600;}
.lv-sb-vs{font-size:11px;font-weight:700;color:var(--muted);}
.lv-sb-diff{font-size:12px;font-weight:800;padding:2px 7px;border-radius:6px;}
.lv-sb-diff--ahead{background:rgba(22,163,74,.12);color:var(--green);}
.lv-sb-diff--behind{background:rgba(220,38,38,.08);color:#dc2626;}
.lv-sb-diff--level{background:var(--bg);color:var(--muted);}
/* Score entry */
.lv-entry{background:var(--surf);border:1px solid var(--bdr);border-radius:14px;padding:14px 16px;display:flex;flex-direction:column;gap:10px;}
.lv-entry-hd{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:800;color:var(--cream);text-transform:uppercase;letter-spacing:.5px;}
.lv-entry-hd .team-dot{width:9px;height:9px;border-radius:50%;}
.lv-entry-hd--opp{color:var(--muted);margin-top:4px;}
.lv-fat-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.lv-fat-wrap{display:flex;flex-direction:column;gap:6px;}
.lv-fat{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;
  padding:18px 12px;border-radius:14px;border:none;cursor:pointer;width:100%;
  font-size:26px;font-weight:700;font-family:-apple-system,sans-serif;
  transition:transform .1s,opacity .15s;-webkit-tap-highlight-color:transparent;}
.lv-fat:active{transform:scale(.95);opacity:.85;}
.lv-fat-lbl{font-size:12px;font-weight:700;line-height:1;}
.lv-fat--g{background:rgba(22,163,74,.12);color:var(--green);}
.lv-fat--w{background:rgba(148,163,184,.15);color:#475569;}
.lv-fat--opp{background:rgba(100,116,139,.08);color:var(--muted);}
.lv-undo-btn{display:flex;align-items:center;justify-content:center;gap:4px;padding:7px 12px;
  border-radius:10px;border:1px solid var(--bdr);background:var(--surf2);cursor:pointer;
  font-size:12px;font-weight:600;color:var(--muted);transition:background .15s;font-family:-apple-system,sans-serif;}
.lv-undo-btn:active{background:var(--bg);}
.lv-undo-btn [data-lucide]{width:13px;height:13px;}
/* Events log */
.lv-log-card{background:var(--surf);border:1px solid var(--bdr);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;}
.lv-log-hd{display:flex;align-items:center;gap:6px;padding:12px 16px;font-size:11px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--bdr);flex-shrink:0;}
.lv-evt-count{font-size:11px;font-weight:700;color:var(--muted);margin-left:2px;}
#lvLogEvents{padding:6px;overflow-y:auto;-webkit-overflow-scrolling:touch;}

/* ── Mobile team tab toggle (Teams page) ── */
.mobile-team-tabs{
  display:none;flex-shrink:0;background:var(--surf);
  border-bottom:1px solid var(--bdr);padding:7px 12px;gap:7px;
}
.mtt-btn{
  flex:1;padding:8px 12px;border:1.5px solid var(--bdr);border-radius:10px;
  background:var(--surf2);color:var(--muted);font-weight:700;font-size:13px;
  cursor:pointer;transition:all .2s;font-family:-apple-system,sans-serif;
  display:flex;align-items:center;justify-content:center;gap:5px;
}
.mtt-btn.on{background:var(--green);border-color:var(--green);color:#fff;
  box-shadow:0 2px 6px rgba(21,128,61,.2);}
.mtt-btn .mtt-count{font-size:11px;opacity:.75;font-weight:600;}

/* ── Teams onboarding CTA (shown when no players available) ── */
.teams-onboarding{
  display:none;flex-direction:column;align-items:center;justify-content:center;
  gap:10px;padding:24px 20px;text-align:center;
  border:1.5px dashed var(--bdr);border-radius:14px;margin:10px 12px;background:var(--surf);
}
.teams-onboarding.show{display:flex;}
.teams-onboarding [data-lucide]{width:36px;height:36px;color:var(--muted);}
.teams-onboarding .btn-green [data-lucide]{color:#fff;width:14px;height:14px;}
.teams-onboarding-title{font-size:15px;font-weight:700;color:var(--cream);}
.teams-onboarding-sub{font-size:13px;color:var(--muted);line-height:1.5;max-width:280px;}

/* ── Sport picker bottom sheet ── */
.overlay--sheet{align-items:flex-end!important;}
.sport-sheet{width:100%;max-width:500px;margin:0 auto;
  background:var(--surf);border-radius:20px 20px 0 0;
  padding:0 0 env(safe-area-inset-bottom,12px);}
.sport-sheet-hd{display:flex;align-items:center;justify-content:space-between;
  padding:16px 18px 12px;border-bottom:1px solid var(--bdr);}
.sport-sheet-hd span{font-size:16px;font-weight:800;color:var(--cream);}
.sport-opt{display:flex;align-items:center;gap:14px;width:100%;
  padding:16px 20px;border:none;border-radius:0;background:transparent;
  cursor:pointer;font-size:16px;font-weight:700;color:var(--cream);
  transition:background .15s;font-family:-apple-system,sans-serif;text-align:left;}
.sport-opt:hover,.sport-opt:active{background:var(--surf2);}
.sport-opt.sport-opt--active{color:var(--green);background:rgba(21,128,61,.05);}
.sport-opt-icon{font-size:22px;width:32px;text-align:center;}
.sport-opt-check{margin-left:auto;color:var(--green);display:none;}
.sport-opt--active .sport-opt-check{display:block;}

/* MOBILE @media breakpoints */
@media(max-width:800px){
  .match-teams{flex-direction:column;overflow:visible;}
  .match-teams .team-col{border-right:none;border-bottom:1px solid var(--bdr);padding-bottom:20px;}
  .match-teams .team-col:last-child{padding-bottom:160px;}
  .team-col{border-right:none;border-bottom:1px solid var(--bdr);}
  .drag-cols{grid-template-columns:1fr;}
  .mc-teams{grid-template-columns:1fr;}
  .p-grid{grid-template-columns:1fr;}
  .hd-title{font-size:16px;}
}
/* Mobile-only: one team shown at a time via tabs */
@media(max-width:640px){
  #pg-sat.on{height:auto;overflow:visible;}
  #pg-sat.on.detail-open{height:100dvh;overflow:hidden;}
  .mobile-team-tabs{display:flex;}
  .match-teams .team-col{display:none;}
  /* Both tabs get full padding-bottom so content always clears the bar */
  .match-teams .team-col.mobile-active{display:flex;padding-bottom:160px;}
  /* Single-column player grid on narrow screens */
  .sb-pool{grid-template-columns:1fr;}
}
@media(max-width:520px){
  .t-grid{grid-template-columns:1fr 1fr!important;}
  nav{padding:0;} .tab{padding:9px 9px;font-size:11px;}
  header{gap:5px;}
}
@media(max-width:380px){
  .t-grid{grid-template-columns:1fr!important;}
}
::-webkit-scrollbar{width:5px;height:5px;}
::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px;}
::-webkit-scrollbar-track{background:transparent;}
@media print{
  header,nav,.sidebar,.btn,.tog,#pg-panel,#pg-mins,#pg-hist,#pg-settings,.squad-builder,.save-banner{display:none!important;}
  #pg-sat{display:grid!important;grid-template-columns:1fr 1fr!important;height:auto!important;}
  .team-col{overflow:visible!important;border:none!important;}
  body{background:#fff!important;color:#000!important;}
  .rot-table thead th{background:#f0fdf4!important;color:#000!important;}
  .chip.on{background:#dcfce7!important;color:#15803d!important;border-color:#15803d!important;}
  .chip.off{background:#f5f5f5!important;color:#999!important;}
}

/* ── Score Page Redesign — Sticky Header ── */
.lv-sticky-hd{position:sticky;top:0;z-index:100;background:#1a1c1e;padding:10px 14px 8px;
  display:flex;flex-direction:column;gap:6px;flex-shrink:0;}
.lv-sh-timer-row{display:flex;align-items:center;justify-content:center;gap:10px;}
.lv-sh-reset{width:34px;height:34px;border-radius:50%;border:1.5px solid rgba(255,255,255,.2);
  background:rgba(255,255,255,.08);color:rgba(255,255,255,.7);cursor:pointer;
  display:flex;align-items:center;justify-content:center;font-family:-apple-system,sans-serif;}
.lv-sh-reset [data-lucide]{width:15px;height:15px;}
.lv-sh-timer{font-family:'Roboto Condensed',-apple-system,sans-serif;font-size:42px;font-weight:800;
  color:#fff;letter-spacing:2px;line-height:1;min-width:120px;text-align:center;cursor:pointer;}
.lv-sh-timer.timer-overtime{color:#f59e0b;}
.lv-sh-timer.timer-fulltime{color:#ef4444;animation:live-pulse 1.2s ease-in-out infinite;}
.lv-sh-play{width:42px;height:42px;border-radius:50%;border:none;background:var(--green);color:#fff;
  font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;
  box-shadow:0 2px 8px rgba(21,128,61,.4);flex-shrink:0;font-family:-apple-system,sans-serif;}
.lv-sh-play--ft{background:#94a3b8;box-shadow:none;cursor:default;}
.lv-sh-phase{font-size:11px;font-weight:800;color:rgba(255,255,255,.45);
  letter-spacing:.8px;min-width:28px;text-align:left;font-family:-apple-system,sans-serif;}
.lv-sh-score-row{display:flex;align-items:center;justify-content:center;gap:14px;padding:2px 0 4px;}
.lv-sh-side{display:flex;flex-direction:column;align-items:center;gap:1px;min-width:80px;}
.lv-sh-side--opp{align-items:flex-end;}
.lv-sh-score{font-family:'Roboto Condensed',-apple-system,sans-serif;font-size:26px;font-weight:800;
  color:#fff;line-height:1;}
.lv-sh-score--opp{color:rgba(255,255,255,.5);}
.lv-sh-name{font-size:12px;font-weight:700;color:rgba(255,255,255,.5);
  text-transform:uppercase;letter-spacing:.5px;font-family:-apple-system,sans-serif;}
.lv-sh-vs{font-size:12px;font-weight:600;color:rgba(255,255,255,.35);}


/* ── Entry card additions ── */
.lv-entry-score{font-family:'Roboto Condensed',-apple-system,sans-serif;font-size:38px;
  font-weight:800;color:var(--cream);text-align:center;line-height:1;
  letter-spacing:2px;padding:4px 0 2px;}
.lv-undo-last{display:flex;align-items:center;justify-content:center;gap:5px;width:100%;
  padding:9px 12px;border-radius:10px;border:1px solid var(--bdr);background:var(--bg);
  font-size:13px;font-weight:600;color:var(--muted);cursor:pointer;
  font-family:-apple-system,sans-serif;margin-top:4px;}
.lv-undo-last:active{background:var(--bdr);}
.lv-undo-last [data-lucide]{width:14px;height:14px;}
.lv-opp-score-disp{margin-left:auto;font-family:'Roboto Condensed',-apple-system,sans-serif;
  font-size:20px;font-weight:800;color:var(--muted);}
.lv-fat-row--opp{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.lv-opp-col{display:flex;flex-direction:column;gap:6px;}

/* ── Light page theme for score pane ── */
#satScorePane{background:var(--bg);}
#satScorePane .lv-body{background:var(--bg);}
/* Sticky header — light */
#satScorePane .lv-sticky-hd{background:var(--surf);border-bottom:1px solid var(--bdr);}
#satScorePane .lv-sh-reset{border-color:var(--bdr);background:var(--bg);color:var(--muted);}
#satScorePane .lv-sh-timer{color:var(--cream);}
#satScorePane .lv-sh-phase{color:var(--muted);}
#satScorePane .lv-sh-score{color:var(--cream);}
#satScorePane .lv-sh-score--opp{color:#475569;}
#satScorePane .lv-sh-name{color:#64748b;}
#satScorePane .lv-sh-vs{color:#94a3b8;}
#satScorePane .lv-sh-diff--ahead{background:rgba(22,163,74,.12);color:var(--green);}
#satScorePane .lv-sh-diff--behind{background:rgba(220,38,38,.08);color:#dc2626;}
/* Team tabs */
#satScorePane .lv-team-tabs{background:var(--surf);border-bottom-color:var(--bdr);}
#satScorePane .lvt-btn{color:var(--muted);}
#satScorePane .lvt-btn.lvt-on{color:var(--green);border-bottom-color:var(--green);}
/* GAA score panel */
#satScorePane .lv-gaa-panel{background:var(--surf);border-color:var(--bdr);}
#satScorePane .lv-gaa-col-lbl{color:var(--muted);}
#satScorePane .lv-gaa-row{background:var(--bg);}
#satScorePane .lv-gaa-row--opp{background:var(--surf2);opacity:.75;}
#satScorePane .lv-gaa-row--opp .lv-gaa-name{color:var(--muted);}
#satScorePane .lv-gaa-row--opp .lv-gaa-ctr-score{color:var(--muted);}
#satScorePane .lv-gaa-row--opp .lv-gaa-pts-total{color:var(--muted);opacity:.7;}
#satScorePane .lv-gaa-name{color:var(--cream);}
#satScorePane .lv-gaa-minus{border-color:var(--bdr);background:var(--surf);color:var(--muted);}
#satScorePane .lv-gaa-minus:active{background:var(--bg);}
#satScorePane .lv-gaa-plus--opp{background:#94a3b8;}
/* Events log */
#satScorePane .lv-log-card{background:var(--surf);border-color:var(--bdr);}
#satScorePane .lv-log-hd{color:var(--muted);}
#satScorePane .ltc-empty{color:var(--muted);}
#satScorePane .ltc-evt-time{color:var(--muted);}
#satScorePane .ltc-evt-label{color:var(--cream);}
#satScorePane .ltc-evt-sub{color:var(--muted);}
#satScorePane .ltc-evt-del{border-color:var(--bdr);background:var(--bg);color:var(--muted);}
#satScorePane .ltc-evt-del:active{background:rgba(220,38,38,.12);color:#dc2626;}
/* ── Score page v2: compact timer block ── */
.sc2-timer-block{
  flex-shrink:0;background:var(--surf);padding:10px 16px 8px;
  border-bottom:1px solid var(--bdr);display:flex;flex-direction:column;align-items:center;gap:6px;
}
.sc2-timer-row{display:flex;align-items:center;justify-content:center;gap:20px;width:100%;}
.sc2-big-timer{
  font-family:'Roboto Condensed',-apple-system,sans-serif;font-size:40px;font-weight:800;
  color:var(--cream);cursor:pointer;letter-spacing:-1px;line-height:1;flex:1;text-align:center;
}
.sc2-big-timer.timer-overtime{color:#f59e0b;}
.sc2-big-timer.timer-fulltime{color:#ef4444;animation:live-pulse 1.2s ease-in-out infinite;}
.sc2-ctrl{display:flex;flex-direction:column;align-items:center;gap:4px;flex-shrink:0;}
.sc2-stop-btn{
  width:40px;height:40px;border-radius:50%;border:2px solid var(--bdr);
  background:var(--bg);color:var(--muted);cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  touch-action:manipulation;-webkit-tap-highlight-color:transparent;
}
.sc2-stop-btn [data-lucide]{width:16px;height:16px;}
.sc2-stop-btn:active{background:var(--bdr);}
.sc2-play-btn{
  width:40px;height:40px;border-radius:50%;border:none;
  background:var(--green);color:#fff;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 3px 12px rgba(21,128,61,.4);
  touch-action:manipulation;-webkit-tap-highlight-color:transparent;
}
.sc2-play-btn:active{opacity:.85;}
.sc2-play-btn.lv-sh-play--ft{background:#94a3b8;box-shadow:none;cursor:default;}
.sc2-adj-row{display:flex;align-items:center;gap:12px;}
.sc2-adj-btn{
  width:30px;height:30px;border-radius:50%;border:1.5px solid var(--bdr);
  background:var(--surf);color:var(--cream);font-size:20px;line-height:1;cursor:pointer;
  display:flex;align-items:center;justify-content:center;font-family:-apple-system,sans-serif;
  touch-action:manipulation;-webkit-tap-highlight-color:transparent;
}
.sc2-adj-btn:active{background:var(--bg);}
.sc2-adj-lbl{font-size:12px;font-weight:600;color:var(--muted);}
.sc2-phase-lbl{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.6px;min-height:14px;}
/* Override #satScorePane score panel for light theme with larger buttons */
#satScorePane .lv-gaa-panel{border-radius:12px;padding:8px 8px 10px;}
#satScorePane .lv-gaa-row{border-radius:10px;padding:12px 6px;margin-bottom:5px;}
#satScorePane .lv-gaa-plus{width:62px;height:62px;font-size:34px;}
#satScorePane .lv-gaa-plus--goal{background:#16a34a;box-shadow:0 3px 14px rgba(22,163,74,.45);}
#satScorePane .lv-gaa-plus--g{background:#1e3a5f;box-shadow:0 3px 14px rgba(30,58,95,.35);}
#satScorePane .lv-gaa-plus--w{background:#1e3a5f;box-shadow:0 3px 14px rgba(30,58,95,.35);}
#satScorePane .lv-gaa-plus--opp{background:#64748b;box-shadow:none;}
#satScorePane .lv-gaa-minus{width:38px;height:38px;font-size:26px;border-width:2px;}
#satScorePane .lv-gaa-ctr-score{font-size:40px;}
/* score-entry on pg-score */
#satScorePane .lv-score-entry{background:var(--bg);}

/* ── GAA Score Panel ── */
.lv-gaa-panel{background:#0a0e35;border-radius:16px;border:1px solid rgba(255,255,255,.07);
  padding:10px 10px 12px;}
.lv-gaa-col-lbl{font-size:11px;font-weight:700;color:rgba(255,255,255,.4);
  text-transform:uppercase;letter-spacing:.6px;font-family:-apple-system,sans-serif;text-align:center;}
.lv-gaa-row{display:flex;align-items:center;gap:6px;
  padding:12px 6px;background:#0d1245;border-radius:12px;margin-bottom:6px;}
.lv-gaa-row--opp{background:#0a1030;margin-bottom:0;}
.lv-gaa-btn-group{display:flex;flex-direction:column;align-items:center;gap:6px;flex-shrink:0;}
.lv-gaa-center{flex:1;display:flex;flex-direction:column;align-items:center;gap:1px;min-width:0;}
.lv-gaa-minus{width:36px;height:36px;border-radius:50%;
  border:1.5px solid rgba(255,255,255,.2);background:rgba(255,255,255,.05);
  color:rgba(255,255,255,.5);font-size:24px;line-height:1;cursor:pointer;
  display:flex;align-items:center;justify-content:center;font-family:-apple-system,sans-serif;}
.lv-gaa-minus:active{background:rgba(255,255,255,.15);}
.lv-gaa-plus{width:56px;height:56px;border-radius:50%;border:none;color:#fff;
  font-size:32px;line-height:1;cursor:pointer;display:flex;align-items:center;
  justify-content:center;font-family:-apple-system,sans-serif;
  background:#2a3456;box-shadow:0 2px 8px rgba(0,0,0,.4);}
.lv-gaa-plus--g{background:#15803d;box-shadow:0 3px 12px rgba(21,128,61,.5);}
.lv-gaa-plus--w{background:#475569;}
.lv-gaa-plus--opp{background:#1e2a4a;}
.lv-gaa-plus:active{transform:scale(.91);}
.lv-gaa-nameline{display:flex;align-items:center;justify-content:center;
  gap:5px;width:100%;overflow:hidden;}
.lv-gaa-name{font-size:12px;font-weight:700;color:rgba(255,255,255,.75);
  text-transform:uppercase;letter-spacing:.4px;font-family:-apple-system,sans-serif;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.lv-gaa-score{font-family:'Roboto Condensed',-apple-system,sans-serif;font-size:44px;
  font-weight:800;color:#f59e0b;letter-spacing:3px;line-height:1;text-align:center;}
.lv-gaa-score--dim{color:rgba(245,158,11,.45);}

/* Points total under score */
.lv-gaa-pts-total{font-size:12px;font-weight:700;color:rgba(255,255,255,.45);letter-spacing:.4px;
  font-family:-apple-system,sans-serif;margin:-2px 0 4px;}
.lv-gaa-pts-total--opp{color:rgba(255,255,255,.25);}
#satScorePane .lv-gaa-pts-total{color:var(--muted);}
#satScorePane .lv-gaa-pts-total--opp{color:#94a3b8;}
/* Centre score display inside each team row */
.lv-gaa-ctr-score{font-family:'Roboto Condensed',-apple-system,sans-serif;font-size:44px;font-weight:800;
  color:#fff;letter-spacing:1px;line-height:1;margin:4px 0 2px;}
.lv-gaa-ctr-score--opp{color:rgba(255,255,255,.45);}
#satScorePane .lv-gaa-ctr-score{color:var(--cream);}
#satScorePane .lv-gaa-ctr-score--opp{color:var(--muted);}
/* Dim panel when match is ended */
.lv-gaa-panel--ended{opacity:.55;pointer-events:none;}
.lv-gaa-panel--ended .lv-gaa-plus,.lv-gaa-panel--ended .lv-gaa-minus{cursor:not-allowed;}


/* ── pg-score layout: score panel fixed, events fill remainder ── */
.lv-score-entry{flex-shrink:0;padding:8px 12px 6px;display:flex;flex-direction:column;gap:8px;}
.lv-events-area{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column;padding:8px 12px 0;}
#satScorePane .lv-score-entry{background:var(--bg);}
#satScorePane .lv-events-area{background:var(--bg);}
/* Log card fills events area, events list scrolls internally */
.lv-events-area .lv-log-card{flex:1;min-height:0;display:flex;flex-direction:column;}
.lv-events-area #lvLogEvents{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:80px;}

/* ── Events summary button ── */
.lv-evt-btn{display:flex;align-items:center;gap:9px;width:100%;padding:13px 16px;
  background:var(--surf);border:1px solid var(--bdr);border-radius:14px;cursor:pointer;
  font-size:14px;font-weight:700;color:var(--cream);-webkit-tap-highlight-color:transparent;
  font-family:-apple-system,sans-serif;}
.lv-evt-btn:active{background:var(--bg);}
.lv-evt-btn-text{flex:1;text-align:left;}

/* ── Events bottom sheet ── */
.lv-events-sheet{background:var(--surf);border-radius:20px 20px 0 0;
  display:flex;flex-direction:column;max-height:85vh;overflow:hidden;}
.lv-events-sheet-hd{display:flex;align-items:center;justify-content:space-between;
  padding:16px 16px 14px;border-bottom:1px solid var(--bdr);flex-shrink:0;}
.lv-events-sheet-title{font-size:16px;font-weight:800;color:var(--cream);}
.lv-events-sheet-body{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;}
.lv-sheet-row{display:flex;align-items:center;gap:9px;padding:11px 16px;border-bottom:1px solid var(--bdr);}
.lv-sheet-time{font-size:12px;font-weight:700;color:var(--muted);min-width:32px;flex-shrink:0;
  font-family:-apple-system,'Roboto Condensed',sans-serif;}
.lv-sheet-badge{font-size:10px;font-weight:800;padding:3px 8px;border-radius:5px;
  flex-shrink:0;text-transform:uppercase;letter-spacing:.4px;}
.lv-sheet-badge--g{background:rgba(220,38,38,.1);color:#dc2626;}
.lv-sheet-badge--p{background:rgba(22,163,74,.1);color:var(--green);}
.lv-sheet-info{flex:1;min-width:0;}
.lv-sheet-scorer{font-size:14px;font-weight:600;color:var(--cream);}
.lv-sheet-attr{background:none;border:none;font-size:14px;font-weight:600;color:var(--green);
  cursor:pointer;padding:0;font-family:-apple-system,sans-serif;-webkit-tap-highlight-color:transparent;}
.lv-sheet-run{font-size:13px;font-weight:800;color:var(--muted);flex-shrink:0;
  font-family:-apple-system,'Roboto Condensed',sans-serif;}
.lv-sheet-del{background:none;border:none;color:var(--muted);font-size:20px;cursor:pointer;
  padding:2px 4px;border-radius:6px;flex-shrink:0;line-height:1;-webkit-tap-highlight-color:transparent;}
.lv-sheet-del:active{color:var(--red);}
.lv-sheet-milestone{text-align:center;padding:8px 16px;font-size:11px;font-weight:800;
  color:var(--muted);text-transform:uppercase;letter-spacing:.6px;border-bottom:1px solid var(--bdr);}
.lv-sheet-empty{padding:32px 16px;text-align:center;color:var(--muted);font-size:14px;}

/* ── Quick scorer bottom sheet ── */
.lv-qs-sheet{background:var(--surf);border-radius:20px 20px 0 0;
  display:flex;flex-direction:column;max-height:65vh;overflow:hidden;}
.lv-qs-sheet-hd{display:flex;align-items:center;justify-content:space-between;
  padding:16px 16px 14px;border-bottom:1px solid var(--bdr);flex-shrink:0;}
.lv-qs-sheet-title{font-size:16px;font-weight:800;color:var(--cream);}
.lv-qs-sheet-body{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;}
.lv-qs-row{display:flex;align-items:center;padding:14px 16px;border-bottom:1px solid var(--bdr);
  cursor:pointer;-webkit-tap-highlight-color:transparent;}
.lv-qs-row:active{background:var(--bg);}
.lv-qs-name{flex:1;font-size:16px;font-weight:600;color:var(--cream);}
.lv-qs-pos{font-size:13px;color:var(--muted);font-weight:500;}
.lv-qs-sheet-foot{padding:12px 16px;border-top:1px solid var(--bdr);flex-shrink:0;
  padding-bottom:calc(12px + env(safe-area-inset-bottom,0px));}
.lv-qs-unattr{display:block;width:100%;padding:12px;background:none;
  border:1px dashed var(--bdr);border-radius:10px;font-size:14px;font-weight:700;
  color:var(--muted);cursor:pointer;font-family:-apple-system,sans-serif;
  -webkit-tap-highlight-color:transparent;}
.lv-qs-unattr:active{opacity:.7;}

/* Diff badge inside sticky header */
.lv-sh-mid{display:flex;flex-direction:column;align-items:center;gap:2px;}
.lv-sh-diff{font-size:12px;font-weight:800;padding:2px 9px;border-radius:10px;
  font-family:-apple-system,sans-serif;letter-spacing:.3px;white-space:nowrap;}
.lv-sh-diff--ahead{background:rgba(74,222,128,.18);color:#4ade80;}
.lv-sh-diff--behind{background:rgba(248,113,113,.18);color:#f87171;}

/* Tighter row padding now that big score is gone */
.lv-gaa-row{padding:10px 6px;}

/* ── Score page UX improvements ── */

/* Goal button — red, slightly larger, distinct from point */
.lv-gaa-plus--goal{background:#dc2626;box-shadow:0 3px 14px rgba(220,38,38,.55);width:64px;height:64px;}

/* Active team banner strip at top of GAA panel */
.lv-team-banner{display:flex;align-items:center;gap:7px;padding:7px 10px 4px;
  font-size:11px;font-weight:800;letter-spacing:.7px;color:rgba(255,255,255,.65);
  text-transform:uppercase;font-family:-apple-system,sans-serif;}
.lv-team-banner .team-dot{width:9px;height:9px;border-radius:50%;}

/* Score differential badge */
.lv-diff-badge{display:flex;align-items:center;justify-content:center;
  font-size:12px;font-weight:800;padding:3px 12px;border-radius:20px;
  margin:2px auto 4px;width:fit-content;font-family:-apple-system,sans-serif;letter-spacing:.3px;}
.lv-diff-badge--ahead{background:rgba(22,163,74,.18);color:#4ade80;}
.lv-diff-badge--behind{background:rgba(220,38,38,.12);color:#f87171;}
.lv-diff-badge--level{background:rgba(255,255,255,.07);color:rgba(255,255,255,.35);}

/* Score bump animation */
@keyframes lv-score-bump{
  0%{transform:scale(1);}
  35%{transform:scale(1.2);}
  100%{transform:scale(1);}
}
.lv-score-bump{animation:lv-score-bump .28s cubic-bezier(.34,1.56,.64,1);}

/* Delete button on timeline events */
.ltc-evt-del{margin-left:auto;flex-shrink:0;width:24px;height:24px;border-radius:50%;
  border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.06);
  color:rgba(255,255,255,.4);cursor:pointer;font-size:15px;line-height:1;
  display:flex;align-items:center;justify-content:center;
  font-family:-apple-system,sans-serif;transition:background .15s;-webkit-tap-highlight-color:transparent;}
.ltc-evt-del:active{background:rgba(220,38,38,.35);color:#fff;}

/* Disabled minus button */
.lv-gaa-minus:disabled{opacity:.22;cursor:not-allowed;}

/* ── Parent view: new score + pitch sections ── */
.pv-timer-block{
  text-align:center;padding:18px 20px 10px;background:var(--surf);
  border-bottom:1px solid var(--bdr);flex-shrink:0;
}
.pv-big-timer{
  display:block;font-family:'Roboto Condensed',-apple-system,sans-serif;
  font-size:52px;font-weight:800;color:var(--cream);letter-spacing:-1px;line-height:1;
}
.pv-big-timer--live{color:#16a34a;}
.pv-phase-row{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:4px;}
.pv-live-dot{font-size:11px;font-weight:800;color:#16a34a;letter-spacing:.4px;}
.pv-phase-lbl{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.6px;}
.pv-scores-block{
  display:flex;align-items:center;justify-content:center;gap:16px;
  padding:14px 20px 10px;background:var(--bg);border-bottom:1px solid var(--bdr);
}
.pv-score-side{display:flex;flex-direction:column;align-items:center;gap:3px;flex:1;}
.pv-score-side--opp{align-items:flex-end;}
.pv-score-num{
  font-family:'Roboto Condensed',-apple-system,sans-serif;
  font-size:36px;font-weight:800;color:var(--cream);letter-spacing:1px;line-height:1;
}
.pv-score-side--opp .pv-score-num{color:#475569;}
.pv-score-name{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;}
.pv-score-vs{font-size:13px;font-weight:600;color:var(--muted);}
.pv-events{flex:1;overflow-y:auto;padding:0 0 80px;}
.pv-events-hd{
  font-size:10px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:1.2px;
  padding:10px 14px 6px;border-bottom:1px solid var(--bdr);background:var(--surf);
  position:sticky;top:0;z-index:2;
}
.pv-events-list{padding:0 14px;}
/* Parent pitch — same visual as coach but non-interactive */
.pov-pitch-field{
  pointer-events:none;width:calc(100% - 24px);max-width:420px;
  margin:12px auto;flex-shrink:0;
}
