:root{font-family:Arial,Helvetica,sans-serif;color:#0f172a;background:#e2e8f0;line-height:1.5}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}.app-shell{width:min(100%,760px);margin:0 auto;padding:20px 16px 40px}.app-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.eyebrow{margin:0 0 4px;font-size:12px;font-weight:700;letter-spacing:.12em}h1,h2,h3,p{margin-top:0}h1{margin-bottom:0;font-size:30px}h2{margin-bottom:8px}.compact{margin-bottom:0}.status-dot{width:12px;height:12px;border-radius:50%;background:#22c55e}.card{background:#fff;border-radius:18px;padding:20px;margin-bottom:16px;box-shadow:0 8px 24px rgba(15,23,42,.08)}.hero-card{padding:24px}.muted{color:#64748b}.primary-btn,.secondary-btn,.danger-btn{border:0;border-radius:12px;padding:12px 16px;font-weight:700}.primary-btn{background:#0f172a;color:#fff}.secondary-btn{background:#e2e8f0;color:#0f172a}.danger-btn{background:#fee2e2;color:#991b1b}.full-width{width:100%}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.button-row,.choice-row{display:flex;gap:8px;flex-wrap:wrap}.settings-grid,.match-details-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.match-details-grid{grid-template-columns:2fr 1fr}.settings-action{grid-column:1/-1;display:flex;align-items:center;gap:12px}.saved-message{font-weight:700;color:#15803d}.player-list,.selection-list,.summary-list,.event-list,.dialog-choice-list{display:grid;gap:8px}.player-row{width:100%;display:grid;grid-template-columns:42px 1fr auto auto;gap:10px;align-items:center;padding:12px 14px;border:0;border-radius:12px;background:#f8fafc;color:#0f172a;text-align:left}.player-row:hover{background:#f1f5f9}.player-number{min-width:34px;font-weight:700}.player-name{min-width:0}.position-badge,.count-badge{border-radius:999px;padding:3px 8px;background:#e2e8f0;font-size:12px;font-weight:700}.edit-label{color:#64748b;font-size:13px;font-weight:700}dialog{border:0;border-radius:18px;padding:0}.dialog-card{width:min(92vw,420px);padding:22px}dialog::backdrop{background:rgba(15,23,42,.45)}label{display:grid;gap:6px;margin:14px 0;font-weight:700}input,select{width:100%;border:1px solid #cbd5e1;border-radius:10px;padding:11px 12px;background:#fff}.dialog-actions{display:flex;align-items:center;gap:8px;margin-top:18px}.dialog-spacer{flex:1}.hidden{display:none!important}fieldset{border:0;padding:0;margin:8px 0 20px}legend{font-weight:700}.choice-pill{display:flex;align-items:center;gap:8px;background:#f1f5f9;padding:10px 14px;border-radius:12px;margin:8px 0}.choice-pill input{width:auto}.setup-section{border-top:1px solid #e2e8f0;padding-top:18px;margin-top:18px}.selection-row{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;margin:0;padding:12px 14px;border-radius:12px;background:#f8fafc}.selection-row.selected{background:#dcfce7}.selection-row input{width:auto}.summary-row{padding:10px 14px;border-radius:10px;background:#f8fafc}.error-message{min-height:24px;color:#b91c1c;font-weight:700}.match-clock-card{text-align:center;padding:18px 12px;background:#f8fafc;border-radius:16px;margin-bottom:18px}.match-clock{font-size:52px;font-weight:800;letter-spacing:.03em;line-height:1.05}.clock-status{color:#64748b;font-weight:700;margin:4px 0}.period-label{font-weight:700;margin-bottom:12px}.timer-btn{min-width:120px}.timer-btn.active{background:#b91c1c}.scoreboard{display:flex;justify-content:center;align-items:center;gap:22px;margin:24px 0}.scoreboard>div{display:grid;text-align:center}.scoreboard strong{font-size:56px;line-height:1}.score-team{font-weight:700;margin-bottom:8px}.score-divider{font-size:36px}.live-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:22px}.action-btn{border:0;border-radius:14px;padding:16px 10px;background:#e2e8f0;color:#0f172a;font-weight:800}.goal-btn{background:#dcfce7}.action-btn:disabled{opacity:.5;cursor:not-allowed}.live-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.event-row{display:grid;grid-template-columns:48px 1fr;gap:8px;align-items:center;padding:10px 12px;background:#f8fafc;border-radius:10px}.event-minute{font-weight:800}.selection-button{border:0;border-radius:12px;padding:12px 14px;text-align:left;background:#f8fafc;color:#0f172a;font-weight:700}.selection-button:hover{background:#e2e8f0}@media(max-width:620px){.settings-grid,.match-details-grid{grid-template-columns:1fr}.section-heading{flex-direction:column}.button-row{width:100%}.button-row button{flex:1}.player-row{grid-template-columns:38px 1fr auto}.edit-label{display:none}.live-actions{grid-template-columns:1fr 1fr}.live-columns{grid-template-columns:1fr}.match-clock{font-size:44px}}

.period-status{display:flex;justify-content:center;align-items:center;gap:10px;margin:8px 0 14px;font-weight:700}
.period-status span:first-child{padding:6px 10px;border-radius:999px;background:#e2e8f0}
.period-controls{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.period-controls button{flex:1}
.checkline{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:8px;margin:12px 0;padding:10px 12px;border-radius:10px;background:#f8fafc}
.checkline input{width:auto}
.period-status{display:flex;justify-content:center;align-items:center;gap:10px;margin:8px 0 14px;font-weight:700}.period-status span:first-child{padding:6px 10px;border-radius:999px;background:#e2e8f0}.period-controls{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.period-controls button{flex:1}.checkline{display:flex;align-items:center;gap:8px;margin:12px 0;padding:10px 12px;border-radius:10px;background:#f8fafc}.checkline input{width:auto}.action-btn:disabled,.timer-btn:disabled{opacity:.5;cursor:not-allowed}

.history-list{display:grid;gap:10px}.history-card{display:flex;align-items:center;gap:14px;width:100%;border:0;border-radius:14px;background:#f8fafc;padding:14px;text-align:left;color:#0f172a}.history-card:hover{background:#f1f5f9}.history-date{font-size:12px;color:#64748b;min-width:86px}.history-main{flex:1}.history-opponent{font-weight:700}.history-result{font-size:13px;color:#64748b}.result-win{color:#15803d}.result-draw{color:#a16207}.result-loss{color:#b91c1c}.report-score{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.report-score>div{background:#f8fafc;border-radius:14px;padding:16px;text-align:center}.report-score span{display:block;color:#64748b;font-size:13px;font-weight:700}.report-score strong{display:block;font-size:32px;margin-top:4px}.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.report-actions{display:flex;align-items:center;gap:10px;margin-top:24px}.event-list{display:grid;gap:8px}.event-row{display:grid;grid-template-columns:58px 1fr;gap:8px;padding:10px 12px;border-radius:10px;background:#f8fafc}.event-minute{font-weight:700;color:#64748b}@media(max-width:620px){.report-grid{grid-template-columns:1fr}.history-card{align-items:flex-start}.history-date{min-width:72px}}

.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.hero-actions button{flex:1;min-width:140px}
.first-section{margin-top:8px;padding-top:0;border-top:0}.stat-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:12px 0 18px}.stat-card{padding:14px;border-radius:12px;background:#f8fafc}.stat-card strong{display:block;font-size:28px;line-height:1.1}.stat-card span{display:block;color:#64748b;font-size:12px;font-weight:700;margin-top:4px}.stats-table-wrap{overflow-x:auto}.stats-table{width:100%;border-collapse:collapse;min-width:620px}.stats-table th,.stats-table td{text-align:left;padding:10px 8px;border-bottom:1px solid #e2e8f0}.stats-table th{font-size:12px;color:#64748b;text-transform:uppercase;letter-spacing:.04em}.stats-table td.num,.stats-table th.num{text-align:center}.player-stat-name{font-weight:700}.stats-empty{padding:12px 0}.settings-view{}
@media(max-width:620px){.stat-cards{grid-template-columns:repeat(2,1fr)}.hero-actions{flex-direction:column}.hero-actions button{width:100%}}

/* v14: improve Season Statistics summary layout */
#seasonSummary {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  align-items: stretch;
}

#seasonSummary .stat-card {
  min-width: 0;
  min-height: 108px;
  padding: 16px;
  border-radius: 16px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

#seasonSummary .stat-card strong {
  font-size: 30px;
  line-height: 1;
}

#seasonSummary .stat-card span {
  margin-top: 10px;
  font-size: 13px;
  font-weight: 700;
  color: #64748b;
}

@media (max-width: 760px) {
  #seasonSummary {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 520px) {
  #seasonSummary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #seasonSummary .stat-card {
    min-height: 96px;
  }

  #seasonSummary .stat-card strong {
    font-size: 28px;
  }
}

/* v16: assists and Power Play */
.power-play-panel{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 22px;padding:16px;border-radius:16px;background:#f8fafc;border:1px solid #e2e8f0}
.power-play-title{font-weight:800;font-size:15px;margin-bottom:3px}
.power-play-status{font-weight:800;margin-bottom:3px}
.power-play-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.power-play-actions button{white-space:nowrap}
@media(max-width:620px){.power-play-panel{flex-direction:column;align-items:stretch}.power-play-actions{justify-content:flex-start}.power-play-actions button{flex:1;min-width:0}}

/* =========================================================
   v18.5 - AUTHORITATIVE PROFESSIONAL UI
   This section replaces the earlier visual overrides with one
   coherent dark football theme. No JS selectors or behaviour
   are changed by these rules.
   ========================================================= */
:root{
  --bg:#06131c;
  --bg-deep:#041018;
  --surface:#0b1f2b;
  --surface-2:#0f2937;
  --surface-3:#143646;
  --line:rgba(155,183,197,.20);
  --text:#f8fbfd;
  --muted:#a9bac4;
  --green:#20dc70;
  --green-dark:#0d9e4d;
  --blue:#2f98ff;
  --amber:#f6c247;
  --red:#f25552;
  --purple:#9167f4;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--text);
  background:var(--bg);
  line-height:1.5;
}
html,body{
  margin:0;
  min-height:100%;
  background:var(--bg)!important;
  color:var(--text)!important;
}
body{
  min-height:100vh;
  background:
    radial-gradient(circle at 50% -10%,rgba(32,220,112,.10),transparent 26rem),
    linear-gradient(180deg,#071a24 0%,#06131c 52%,#041018 100%)!important;
}
button,input,select{font:inherit}
button{cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .12s ease,filter .15s ease,box-shadow .18s ease}
button:active{transform:scale(.975)}

.app-shell{width:min(100%,820px);margin:0 auto;padding:18px 14px 44px;color:var(--text)!important}
.app-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding:10px 4px 16px;border-bottom:1px solid var(--line)}
.app-header h1{margin:0;font-size:32px;line-height:1;letter-spacing:-.04em;color:#fff!important}
.app-header .eyebrow,.eyebrow{color:#a7eec0!important;font-size:11px;font-weight:850;letter-spacing:.18em}
.status-dot{width:12px;height:12px;border-radius:50%;background:var(--green);box-shadow:0 0 0 6px rgba(32,220,112,.08),0 0 18px rgba(32,220,112,.45)}

.card{
  position:relative;
  overflow:hidden;
  margin-bottom:16px;
  padding:20px;
  border-radius:22px;
  border:1px solid var(--line)!important;
  color:var(--text)!important;
  background:linear-gradient(145deg,rgba(15,43,57,.98),rgba(7,25,35,.98))!important;
  box-shadow:0 18px 50px rgba(0,0,0,.28)!important;
}
.card h1,.card h2,.card h3,.card p,.card label,.card legend,.card span,.card div,.card td,.card th{color:inherit}
.card h2{font-size:24px;letter-spacing:-.025em}
.hero-card{
  min-height:220px;
  padding:28px 24px;
  background:
    radial-gradient(circle at 82% 12%,rgba(32,220,112,.16),transparent 16rem),
    linear-gradient(180deg,rgba(9,39,45,.82),rgba(5,23,31,.98))!important;
}
.hero-card::before{
  content:"";
  position:absolute;
  inset:-20% -5% auto;
  height:150%;
  opacity:.12;
  pointer-events:none;
  background:
    linear-gradient(90deg,transparent 49.65%,#fff 49.9%,#fff 50.1%,transparent 50.35%),
    radial-gradient(circle at 50% 50%,transparent 0 54px,#fff 55px 56px,transparent 57px);
}
.hero-card>*{position:relative}
.hero-card .muted{color:#b6c7cf!important;text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:850}
.hero-card h2{font-size:31px;margin-bottom:8px;color:#fff!important}
.hero-card p:not(.muted){color:#d6e3e9!important}

.primary-btn,.secondary-btn,.danger-btn{border-radius:14px;padding:12px 17px;font-weight:850;border:1px solid transparent;min-height:48px}
.primary-btn{color:#03160a!important;background:linear-gradient(180deg,#2be77a,#10b95b)!important;box-shadow:0 9px 24px rgba(32,220,112,.20),inset 0 1px rgba(255,255,255,.40)}
.secondary-btn{color:#edf5f8!important;background:linear-gradient(180deg,#173b4f,#112d3b)!important;border-color:rgba(155,183,197,.23)!important}
.danger-btn{color:#fff!important;background:linear-gradient(180deg,#f45d5a,#d83e3b)!important;box-shadow:0 9px 20px rgba(242,85,82,.15)}
.primary-btn:hover,.secondary-btn:hover,.danger-btn:hover{filter:brightness(1.05)}
.full-width{width:100%}

.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}
.section-heading h2,.section-heading h3{color:#fff!important}
.muted,.compact,.history-date,.history-result,.event-minute,.clock-status,.report-score span,.stats-table th,.edit-label{color:var(--muted)!important}
.button-row,.choice-row{display:flex;gap:9px;flex-wrap:wrap}
.settings-grid,.match-details-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.match-details-grid{grid-template-columns:2fr 1fr}
.settings-action{grid-column:1/-1;display:flex;align-items:center;gap:12px}
.saved-message{font-weight:750;color:#66e99a!important}

.player-list,.selection-list,.summary-list,.event-list,.dialog-choice-list{display:grid;gap:8px}
.player-row,.selection-row,.summary-row,.event-row,.history-card,.choice-pill,.checkline{background:rgba(255,255,255,.045)!important;border:1px solid rgba(155,183,197,.12)!important;color:var(--text)!important}
.player-row{width:100%;display:grid;grid-template-columns:42px 1fr auto auto;gap:10px;align-items:center;padding:12px 14px;border-radius:13px;text-align:left}
.player-row:hover{background:rgba(255,255,255,.075)!important}
.player-number{min-width:34px;font-weight:850;color:#fff!important}
.player-name{min-width:0;color:#fff!important}
.position-badge,.count-badge{border-radius:999px;padding:4px 9px;background:rgba(32,220,112,.11)!important;border:1px solid rgba(32,220,112,.20)!important;color:#bdeecf!important;font-size:12px;font-weight:800}
.edit-label{font-size:13px;font-weight:750}

label{display:grid;gap:6px;margin:14px 0;font-weight:750;color:#edf5f8!important}
legend{font-weight:800;color:#edf5f8!important}
input,select{width:100%;border:1px solid rgba(155,183,197,.28)!important;border-radius:12px;padding:11px 12px;background:#081923!important;color:#f8fbfd!important}
input::placeholder{color:#7f949f!important;opacity:1}
select option{background:#0b1f2b;color:#fff}
input:focus,select:focus{outline:2px solid rgba(32,220,112,.25);border-color:rgba(32,220,112,.65)!important}
.choice-pill{padding:10px 14px;border-radius:12px;color:#edf5f8!important}
.choice-pill input,.checkline input,.selection-row input{width:auto}
.setup-section{border-top:1px solid var(--line)!important;padding-top:18px;margin-top:18px}
.selection-row{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;margin:0;padding:12px 14px;border-radius:12px}
.selection-row.selected{background:rgba(32,220,112,.13)!important;border-color:rgba(32,220,112,.38)!important}
.selection-button{border:1px solid rgba(155,183,197,.12)!important;border-radius:12px;padding:12px 14px;text-align:left;background:rgba(255,255,255,.045)!important;color:#eef6f9!important;font-weight:800}
.selection-button:hover{background:rgba(255,255,255,.08)!important}
.summary-row{padding:10px 14px;border-radius:11px}
.error-message{min-height:24px;color:#ff8d89!important;font-weight:800}

.period-status{display:flex;justify-content:center;align-items:center;gap:10px;margin:8px 0 14px;font-weight:800;color:#fff!important}
.period-status span:first-child{padding:6px 10px;border-radius:999px;background:rgba(32,220,112,.12)!important;color:#bdeecf!important;border:1px solid rgba(32,220,112,.2)}
.period-controls{display:flex;gap:9px;flex-wrap:wrap;margin:12px 0}
.period-controls button{flex:1}
.checkline{display:flex;align-items:center;gap:8px;margin:12px 0;padding:10px 12px;border-radius:11px}

.match-clock-card{position:relative;text-align:center;padding:22px 12px;background:linear-gradient(145deg,#0b2531,#071721)!important;border-radius:18px;margin-bottom:18px;border:1px solid rgba(155,183,197,.13)!important;box-shadow:inset 0 1px rgba(255,255,255,.04)}
.match-clock{font-size:58px;font-weight:900;letter-spacing:-.03em;line-height:1;color:#fff!important;font-variant-numeric:tabular-nums}
.clock-status{font-weight:750;margin:6px 0;color:var(--muted)!important}
.period-label{font-weight:800;margin-bottom:12px;color:#e7f5ec!important}
.timer-btn{min-width:120px}
.timer-btn.active{background:linear-gradient(180deg,#f05c59,#d33b38)!important;color:#fff!important}

.scoreboard{display:flex;justify-content:center;align-items:center;gap:24px;margin:25px 0;padding:22px 10px;border-radius:19px;background:rgba(0,0,0,.16);border:1px solid rgba(155,183,197,.10)}
.scoreboard>div{display:grid;text-align:center;min-width:110px}
.scoreboard strong{font-size:64px;line-height:1;color:#fff!important;font-weight:900}
.score-team{font-weight:850;margin-bottom:9px;color:#cbd8de!important;text-transform:uppercase;font-size:12px;letter-spacing:.10em}
.score-divider{font-size:38px;color:#78909c!important}

.live-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px}
.action-btn{border:1px solid rgba(155,183,197,.15)!important;border-radius:14px;padding:16px 10px;background:linear-gradient(180deg,#183a4c,#112c3a)!important;color:#eef6f9!important;font-weight:850;box-shadow:inset 0 1px rgba(255,255,255,.05)}
.goal-btn{background:linear-gradient(180deg,#2ae677,#12bc5d)!important;color:#03160a!important;border-color:#35ec84!important}
.action-btn:disabled,.timer-btn:disabled{opacity:.5;cursor:not-allowed}
.live-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.live-columns>div{padding:14px;border-radius:16px;background:rgba(255,255,255,.025);border:1px solid rgba(155,183,197,.11)}
.live-columns h3{color:#fff!important}
.event-row{display:grid;grid-template-columns:58px 1fr;gap:8px;align-items:center;padding:10px 12px;border-radius:11px}
.event-minute{font-weight:850;color:#76de9d!important}

.power-play-panel{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 22px;padding:16px;border-radius:17px;background:linear-gradient(135deg,rgba(145,103,244,.17),rgba(17,38,51,.9))!important;border:1px solid rgba(145,103,244,.30)!important;color:#fff!important}
.power-play-title{font-weight:900;font-size:15px;color:#fff!important;margin-bottom:3px}
.power-play-status{font-weight:850;color:#f3ebff!important;margin-bottom:3px}
.power-play-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.power-play-actions button{white-space:nowrap}
.power-play-panel .count-badge{background:rgba(145,103,244,.16)!important;border-color:rgba(145,103,244,.28)!important;color:#e2d6ff!important}

.history-list{display:grid;gap:10px}
.history-card{display:flex;align-items:center;gap:14px;width:100%;border-radius:14px;padding:14px;text-align:left}
.history-card:hover{background:rgba(255,255,255,.075)!important}
.history-date{min-width:86px}
.history-main{flex:1;color:#fff!important}
.history-opponent{font-weight:850;color:#fff!important}
.result-win{color:#60e89a!important}.result-draw{color:#f4cf69!important}.result-loss{color:#ff7773!important}

.report-score{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}
.report-score>div{background:rgba(255,255,255,.045)!important;border:1px solid rgba(155,183,197,.12)!important;border-radius:15px;padding:16px;text-align:center}
.report-score strong{display:block;font-size:34px;color:#fff!important;margin-top:5px}
.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.report-actions{display:flex;align-items:center;gap:10px;margin-top:24px}

#seasonSummary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;align-items:stretch}
#seasonSummary .stat-card{min-width:0;min-height:108px;padding:16px;border-radius:16px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.025))!important;border:1px solid rgba(155,183,197,.12)!important;color:#fff!important}
#seasonSummary .stat-card strong{font-size:31px;line-height:1;color:#fff!important}
#seasonSummary .stat-card span{margin-top:10px;font-size:13px;font-weight:750;color:var(--muted)!important}
#seasonSummary .stat-card:first-child strong{color:var(--green)!important}
.stat-cards{gap:12px}
.stats-table{width:100%;border-collapse:collapse;min-width:620px;color:#fff!important}
.stats-table th,.stats-table td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--line)!important}
.stats-table th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#93a9b4!important}
.stats-table td{color:#f4f8fa!important}
.stats-table tbody tr:hover{background:rgba(255,255,255,.03)}
.stats-empty{padding:12px 0;color:#a9bac4!important}

.dialog-card{width:min(92vw,430px);padding:22px;color:#f8fbfd!important;background:linear-gradient(180deg,#102a38,#081923)!important;border:1px solid rgba(155,183,197,.18)!important;border-radius:20px;box-shadow:0 30px 85px rgba(0,0,0,.55)}
dialog{border:0;border-radius:20px;padding:0;background:transparent}
dialog::backdrop{background:rgba(0,8,13,.78);backdrop-filter:blur(4px)}

/* Splash: always full-screen, self-contained visually, and hidden underneath app */
#splashScreen,.splash-screen{position:fixed!important;inset:0!important;z-index:2147483647!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;visibility:visible!important;opacity:1!important;color:#fff!important;background:
  radial-gradient(circle at 50% 20%,rgba(32,220,112,.20),transparent 24rem),
  radial-gradient(circle at 50% 82%,rgba(0,184,255,.08),transparent 28rem),
  linear-gradient(180deg,#04121b 0%,#071d27 54%,#06140e 100%)!important}
#splashScreen::before,.splash-screen::before{content:"";position:absolute;inset:auto -10% -8%;height:44%;opacity:.28;background:
  linear-gradient(90deg,transparent 49.65%,rgba(255,255,255,.65) 49.9%,rgba(255,255,255,.65) 50.1%,transparent 50.35%),
  radial-gradient(ellipse at 50% 100%,transparent 0 32%,rgba(255,255,255,.52) 32.3% 32.6%,transparent 33%),
  linear-gradient(180deg,transparent,rgba(24,122,53,.72));transform:perspective(520px) rotateX(58deg);transform-origin:bottom}
.splash-stadium-glow{position:absolute;inset:0;background:radial-gradient(ellipse at 10% 18%,rgba(255,255,255,.18),transparent 11%),radial-gradient(ellipse at 90% 18%,rgba(255,255,255,.18),transparent 11%),radial-gradient(ellipse at 50% 12%,rgba(255,255,255,.10),transparent 14%);filter:blur(2px)}
.splash-content{position:relative;z-index:2;width:min(90vw,520px);display:flex;flex-direction:column;align-items:center;text-align:center;padding:36px 22px 28px}
.splash-logo{width:clamp(140px,30vw,188px);height:auto;margin-bottom:18px;filter:drop-shadow(0 18px 34px rgba(0,0,0,.45));animation:splash-logo-in .8s ease-out both}
.splash-eyebrow{margin:0 0 6px;font-size:11px;font-weight:850;letter-spacing:.22em;color:#a9efc0!important}
.splash-title{margin:0;font-size:clamp(36px,8vw,58px);line-height:.98;letter-spacing:-.05em;font-weight:900;color:#fff!important}
.splash-title span{display:block;color:#fff!important}.splash-title em{display:block;color:#3be57d!important;font-style:normal}
.splash-rule{width:112px;height:3px;margin:18px 0 14px;border-radius:999px;background:linear-gradient(90deg,#23d66e,#9affb5);box-shadow:0 0 20px rgba(57,229,125,.45)}
.splash-tagline{margin:0;font-size:clamp(18px,4.5vw,25px);line-height:1.12;font-style:italic;color:#d9eae1!important;text-shadow:0 4px 16px rgba(0,0,0,.35)}
.splash-credit{margin-top:clamp(70px,13vh,104px);display:flex;flex-direction:column;gap:4px;color:#cbd7de!important}.splash-credit span{font-size:12px}.splash-credit strong{font-size:19px;color:#fff!important}
.splash-progress{width:min(190px,55vw);height:5px;margin-top:18px;border-radius:999px;overflow:hidden;background:rgba(148,163,184,.28)}
.splash-progress span{display:block;width:40%;height:100%;border-radius:inherit;background:#39e57d;box-shadow:0 0 16px rgba(57,229,125,.50);animation:splash-progress 1.25s ease-in-out infinite}
.splash-exit{animation:splash-out .55s ease-in forwards}
@keyframes splash-logo-in{from{opacity:0;transform:translateY(14px) scale(.92)}to{opacity:1;transform:none}}
@keyframes splash-progress{0%{transform:translateX(-120%);width:32%}55%{transform:translateX(120%);width:52%}100%{transform:translateX(320%);width:28%}}
@keyframes splash-out{to{opacity:0;visibility:hidden;transform:scale(1.02)}}

/* Ensure the original app cannot bleed through during the splash */
body.app-starting{overflow:hidden!important;background:#04121b!important}
body.app-starting .app-shell{visibility:hidden!important;opacity:0!important}

@media(max-width:760px){
  #seasonSummary{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:620px){
  .app-shell{padding:10px 10px 34px}
  .app-header{padding:10px 4px 14px}.app-header h1{font-size:27px}
  .card{padding:17px;border-radius:19px}.hero-card{min-height:205px;padding:22px 18px}.hero-card h2{font-size:28px}
  .settings-grid,.match-details-grid{grid-template-columns:1fr}.section-heading{flex-direction:column}.button-row{width:100%}.button-row button{flex:1}
  .player-row{grid-template-columns:38px 1fr auto}.edit-label{display:none}
  .live-actions{grid-template-columns:1fr 1fr}.live-columns{grid-template-columns:1fr}.match-clock{font-size:48px}.scoreboard{gap:14px}.scoreboard>div{min-width:90px}.scoreboard strong{font-size:56px}
  .power-play-panel{flex-direction:column;align-items:stretch}.power-play-actions{justify-content:flex-start}.power-play-actions button{flex:1;min-width:0}
  .report-grid{grid-template-columns:1fr}.history-card{align-items:flex-start}.history-date{min-width:72px}
  #seasonSummary{grid-template-columns:repeat(2,minmax(0,1fr))}#seasonSummary .stat-card{min-height:96px}#seasonSummary .stat-card strong{font-size:28px}
}


/* =========================================================
   v19: PROFESSIONAL FOOTBALL MATCH CENTRE
   ========================================================= */
:root{--v19-bg:#04121a;--v19-panel:#0a202d;--v19-panel2:#0e2c3a;--v19-line:rgba(181,215,228,.16);--v19-text:#f7fbfd;--v19-muted:#9fb5c1;--v19-green:#25df72;--v19-blue:#2b9cff;--v19-purple:#9a65ff;--v19-red:#ff5456}
body{background:radial-gradient(circle at 50% -8%,rgba(37,223,114,.11),transparent 30rem),linear-gradient(180deg,#061923 0%,#031017 72%,#02090e 100%);color:var(--v19-text)}
.app-shell{max-width:960px}.app-header{padding:16px 6px 18px;border-bottom-color:var(--v19-line)}.app-header h1{font-size:34px;color:#fff!important}.eyebrow{color:var(--v19-green)!important}
.card{background:linear-gradient(145deg,rgba(13,42,57,.98),rgba(6,22,31,.99));border:1px solid var(--v19-line);border-radius:24px;box-shadow:0 24px 70px rgba(0,0,0,.32)}.muted{color:var(--v19-muted)!important}
.primary-btn,.secondary-btn,.danger-btn{min-height:50px;border-radius:15px;font-weight:900;box-shadow:inset 0 1px rgba(255,255,255,.11)}
.primary-btn{background:linear-gradient(180deg,#2ce978,#15bc5d)!important;color:#03160b!important;border-color:rgba(90,255,153,.42)!important}.secondary-btn{background:linear-gradient(180deg,#183e51,#102b39)!important;color:#eef7fa!important;border-color:rgba(180,214,227,.20)!important}.danger-btn{background:linear-gradient(180deg,#e95357,#c83c42)!important;color:#fff!important}
input,select{background:#06151e!important;color:#f4fbfd!important;border:1px solid rgba(170,207,221,.22)!important}input::placeholder{color:#78919e!important}
.team-identity-grid{display:grid;grid-template-columns:2fr 1fr;gap:13px;margin-bottom:4px}.settings-grid{display:grid;gap:13px}@media(max-width:620px){.team-identity-grid{grid-template-columns:1fr}}
.selection-row,.selection-button,.summary-row,.player-row{background:rgba(255,255,255,.045)!important;border-color:rgba(170,207,221,.12)!important;color:#edf6f9!important}.selection-row.selected{background:rgba(37,223,114,.13)!important;border-color:rgba(37,223,114,.38)!important}.count-badge{background:rgba(37,223,114,.10)!important;border-color:rgba(37,223,114,.20)!important;color:#baf2ce!important}
.hero-card{background:linear-gradient(145deg,rgba(12,49,50,.98),rgba(7,27,38,.98));min-height:235px}.stat-card{background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.028));border-color:var(--v19-line);border-radius:18px}.stat-card strong{color:#fff!important}.stat-card span{color:var(--v19-muted)!important}.history-card{background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.025))!important;border:1px solid var(--v19-line)!important}.history-opponent{color:#fff!important}.history-result{color:#acc0cb!important}
/* live */
.live-card{padding:0;background:linear-gradient(180deg,#071e29,#04131c 70%,#030c12);overflow:hidden}.live-topbar{display:flex;align-items:center;justify-content:space-between;padding:19px 20px 14px;border-bottom:1px solid var(--v19-line)}.icon-btn{min-width:46px;padding:10px}
.scoreboard-hero{position:relative;display:grid;grid-template-columns:1fr 1.35fr 1fr;align-items:center;gap:12px;min-height:320px;padding:30px 26px 22px;overflow:hidden;background:linear-gradient(180deg,rgba(2,13,20,.05),rgba(2,13,20,.88)),radial-gradient(circle at 15% 18%,rgba(255,255,255,.20),transparent 11%),radial-gradient(circle at 85% 18%,rgba(255,255,255,.20),transparent 11%),linear-gradient(90deg,#124533,#0d2f3f 50%,#124533)}
.scoreboard-hero:before{content:"";position:absolute;inset:0;opacity:.26;pointer-events:none;background:linear-gradient(90deg,transparent 49.8%,rgba(255,255,255,.54) 50%,transparent 50.2%),radial-gradient(circle at 50% 58%,transparent 0 57px,rgba(255,255,255,.38) 58px 59px,transparent 60px)}.scoreboard-hero:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.22;background:repeating-linear-gradient(0deg,rgba(50,240,123,.05) 0 2px,transparent 2px 8px)}.scoreboard-hero>*{position:relative;z-index:1}
.team-panel{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.team-panel-opponent .team-crest{border-color:rgba(255,84,86,.82);box-shadow:0 0 28px rgba(255,84,86,.12)}
.team-crest{display:grid;place-items:center;width:88px;height:103px;clip-path:polygon(50% 0%,92% 13%,96% 72%,74% 91%,50% 100%,26% 91%,4% 72%,8% 13%);background:linear-gradient(180deg,#112c40,#06131c);border:4px solid var(--v19-green);outline:1px solid rgba(255,255,255,.15);font-size:24px;font-weight:950;letter-spacing:.05em;color:#fff;text-shadow:0 4px 12px rgba(0,0,0,.40);box-shadow:0 12px 30px rgba(0,0,0,.30),0 0 30px rgba(37,223,114,.10)}
.team-crest:after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:radial-gradient(circle,#fff 0 32%,#111 33% 55%,#fff 56%);transform:translateY(32px);opacity:.9}.team-name{max-width:190px;color:#fff!important;font-size:16px;font-weight:900;line-height:1.15}
.score-centre{display:flex;flex-direction:column;align-items:center;text-align:center}.match-stage{font-size:11px;letter-spacing:.28em;font-weight:900;color:#c7e9d2;margin-bottom:4px}.scoreline{display:flex;align-items:center;justify-content:center;gap:16px}.scoreline strong{font-size:78px;line-height:.92;letter-spacing:-.065em;color:#fff!important;text-shadow:0 6px 28px rgba(0,0,0,.40)}.scoreline .score-divider{font-size:44px;color:#c4d5dc}.match-clock-pill{margin:15px 0 9px;padding:10px 24px;border-radius:17px;background:rgba(3,15,22,.74);border:1px solid rgba(172,210,225,.22);box-shadow:inset 0 1px rgba(255,255,255,.08)}.match-clock-pill span{display:block;font-size:34px;font-weight:950;font-variant-numeric:tabular-nums;color:#fff!important}.match-clock-pill small{display:block;margin-top:2px;font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:#9fe8bb!important}.scoreboard-hero .period-status{display:none}.scoreboard-hero .timer-btn{min-width:130px;min-height:42px;font-size:14px}
.score-meta-line{display:flex;justify-content:center;align-items:center;gap:14px;padding:11px 18px;background:rgba(3,12,18,.65);border-top:1px solid var(--v19-line);border-bottom:1px solid var(--v19-line);font-size:10px;letter-spacing:.14em;color:#96abb5}.score-meta-line strong{font-size:16px;letter-spacing:0;color:#fff}.score-meta-line strong:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--v19-green);box-shadow:0 0 12px rgba(37,223,114,.70);margin-right:7px}
.live-actions{grid-template-columns:repeat(2,minmax(0,1fr));padding:18px 20px 0;gap:12px;margin-bottom:14px}.action-btn{min-height:64px;border-radius:16px;font-size:16px;font-weight:900;background:linear-gradient(180deg,#143547,#0d2735)!important;color:#f4fbfd!important;border:1px solid rgba(175,214,226,.19)!important}.goal-btn{background:linear-gradient(180deg,#2be779,#12b85a)!important;color:#03150b!important;border-color:rgba(87,255,153,.48)!important}.live-actions #subBtn{border-color:rgba(154,101,255,.36)!important;background:linear-gradient(180deg,rgba(154,101,255,.24),rgba(58,30,98,.35))!important}.live-actions #theirGoalBtn{border-color:rgba(255,84,86,.34)!important;background:linear-gradient(180deg,rgba(255,84,86,.18),rgba(83,26,32,.34))!important}
.power-play-panel{margin:0 20px 16px;padding:17px 18px;border-radius:18px;background:linear-gradient(135deg,rgba(154,101,255,.17),rgba(17,33,44,.95))!important;border:1px solid rgba(154,101,255,.40)!important;box-shadow:0 0 0 1px rgba(154,101,255,.06),0 12px 34px rgba(91,51,162,.12)}.power-play-kicker{font-size:9px;letter-spacing:.18em;color:#cdbaff!important;font-weight:900}.power-play-title{font-size:19px!important;color:#fff!important}.power-play-status{font-size:13px;color:#e9deff!important}.power-play-panel .count-badge{font-size:15px;font-weight:900}.power-play-panel .secondary-btn{min-height:43px}
.live-columns{grid-template-columns:1fr 1fr;gap:12px;padding:0 20px}.live-columns>div{background:rgba(255,255,255,.035);border:1px solid var(--v19-line);border-radius:16px;padding:14px}.live-columns h3{margin-top:0}.live-card>.setup-section{padding-left:0;padding-right:0}.live-card .event-list{padding:0 20px 20px}.event-row{background:rgba(255,255,255,.035)!important;border:1px solid rgba(170,207,221,.10)!important;border-radius:11px;color:#eef7fa!important}.event-minute{color:#7ee5aa!important}
/* reports */
.report-team-head{display:flex;align-items:center;gap:12px}.mini-crest{width:44px;height:53px;border-width:2px;font-size:13px;flex:0 0 auto}.mini-crest:after{width:10px;height:10px;transform:translateY(16px)}.report-team-head h2{margin:0;flex:1;color:#fff!important}.report-score>div{background:rgba(255,255,255,.045)!important;border:1px solid var(--v19-line)!important}.report-score strong{color:#fff!important}
/* mobile */
@media(max-width:700px){.scoreboard-hero{grid-template-columns:1fr 1.55fr 1fr;padding:22px 9px;min-height:285px}.team-crest{width:68px;height:82px;font-size:18px}.team-name{font-size:12px}.scoreline{gap:8px}.scoreline strong{font-size:54px}.scoreline .score-divider{font-size:32px}.match-clock-pill{padding:8px 16px}.match-clock-pill span{font-size:26px}.live-actions{padding-left:12px;padding-right:12px}.power-play-panel{margin-left:12px;margin-right:12px}.live-columns{padding-left:12px;padding-right:12px}.live-card .event-list{padding-left:12px;padding-right:12px}}


/* v19.1 - prominent active Power Play state */
.power-play-panel.is-active{
  background:linear-gradient(135deg,rgba(255,81,75,.24),rgba(58,20,27,.96)) !important;
  border:2px solid #ff4f4b !important;
  box-shadow:
    0 0 0 2px rgba(255,79,75,.10),
    0 0 24px rgba(255,79,75,.34),
    0 16px 42px rgba(113,22,28,.24) !important;
}
.power-play-panel.is-active .power-play-kicker{color:#ffb0ad !important}
.power-play-panel.is-active .power-play-title{color:#fff !important}
.power-play-panel.is-active .power-play-title::after{
  content:'  •  ACTIVE';
  color:#ff6b67;
  font-size:.72em;
  letter-spacing:.12em;
  vertical-align:middle;
}
.power-play-panel.is-active .power-play-status{color:#ffd2d0 !important}
.power-play-panel.is-active .count-badge{
  color:#fff !important;
  background:rgba(255,79,75,.18) !important;
  border-color:rgba(255,120,116,.52) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.06),0 0 14px rgba(255,79,75,.20);
}
.power-play-panel.is-active .power-play-actions button.secondary-btn{
  background:linear-gradient(180deg,#f76b66,#df403d) !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.16) !important;
}
.power-play-panel.is-warning{
  border-color:#ff3f3b !important;
  box-shadow:0 0 0 2px rgba(255,63,59,.12),0 0 28px rgba(255,63,59,.44),0 16px 42px rgba(113,22,28,.28) !important;
  animation:ppWarnPulse 1.35s ease-in-out infinite;
}
@keyframes ppWarnPulse{0%,100%{filter:brightness(1)}50%{filter:brightness(1.06)}}


/* =========================================================
   v19.2 MATCH CENTRE POLISH
   Coordinated visual refinement for the live match screen.
   No new controls or match logic.
   ========================================================= */
.live-card{border-radius:28px!important;box-shadow:0 30px 85px rgba(0,0,0,.48)!important}
.live-topbar{padding:18px 20px 14px!important;background:linear-gradient(180deg,rgba(255,255,255,.035),transparent)!important}
.live-topbar .eyebrow{font-size:10px!important;letter-spacing:.2em!important}
.live-topbar #liveMeta{font-size:12px!important;color:#a8bdc7!important}
.live-topbar .icon-btn{width:44px;height:44px;min-width:44px;border-radius:14px!important;background:rgba(22,55,70,.8)!important}

.scoreboard-hero{
  min-height:390px!important;
  padding:38px 30px 28px!important;
  background:
    linear-gradient(180deg,rgba(2,12,18,.02) 0%,rgba(2,12,18,.25) 42%,rgba(2,12,18,.95) 100%),
    radial-gradient(circle at 12% 15%,rgba(255,255,255,.30),transparent 10%),
    radial-gradient(circle at 88% 15%,rgba(255,255,255,.30),transparent 10%),
    linear-gradient(180deg,#0d3c45 0%,#0b3340 45%,#0a5134 100%)!important;
}
.scoreboard-hero:before{
  opacity:.34!important;
  background:
    linear-gradient(90deg,transparent 49.7%,rgba(255,255,255,.58) 50%,transparent 50.3%),
    radial-gradient(circle at 50% 56%,transparent 0 78px,rgba(255,255,255,.32) 79px 80px,transparent 81px),
    linear-gradient(0deg,rgba(255,255,255,.0) 0 67%,rgba(255,255,255,.18) 67.2% 67.6%,transparent 67.8% 100%)!important;
}
.scoreboard-hero:after{
  opacity:.30!important;
  background:
    repeating-linear-gradient(0deg,rgba(87,255,154,.055) 0 2px,transparent 2px 8px),
    linear-gradient(90deg,transparent 14%,rgba(255,255,255,.05) 14.1% 14.3%,transparent 14.4% 85.6%,rgba(255,255,255,.05) 85.7% 85.9%,transparent 86%)!important;
}

.team-panel{gap:15px!important}
.team-crest{
  width:116px!important;height:136px!important;
  font-size:29px!important;
  border-width:5px!important;
  box-shadow:0 15px 35px rgba(0,0,0,.38),0 0 36px rgba(37,223,114,.16)!important;
}
.team-crest:after{width:21px!important;height:21px!important;transform:translateY(39px)!important}
.team-panel-opponent .team-crest{box-shadow:0 15px 35px rgba(0,0,0,.38),0 0 30px rgba(255,84,86,.14)!important}
.team-name{max-width:210px!important;font-size:17px!important;line-height:1.12!important;text-shadow:0 3px 14px rgba(0,0,0,.35)}
.score-centre{transform:translateY(-3px)}
.match-stage{font-size:12px!important;letter-spacing:.31em!important;color:#d5f4de!important}
.scoreline{gap:21px!important}
.scoreline strong{font-size:92px!important}
.scoreline .score-divider{font-size:50px!important;color:#a9c1cb!important}
.match-clock-pill{
  margin:17px 0 11px!important;
  padding:12px 26px!important;
  border-radius:19px!important;
  background:rgba(2,14,20,.82)!important;
  border:1px solid rgba(185,221,233,.25)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.09),0 14px 32px rgba(0,0,0,.22)!important;
}
.match-clock-pill span{font-size:39px!important}
.match-clock-pill small{font-size:10px!important;letter-spacing:.17em!important}
.scoreboard-hero .timer-btn{min-width:138px!important;min-height:46px!important;font-size:15px!important}

.score-meta-line{
  padding:13px 18px!important;
  background:linear-gradient(180deg,rgba(2,11,16,.84),rgba(3,15,21,.64))!important;
  letter-spacing:.16em!important;
}
.score-meta-line strong{font-size:18px!important}
.score-meta-line strong:before{width:9px!important;height:9px!important}

.period-controls{padding:10px 20px 0!important;gap:10px!important}
.period-controls .secondary-btn{min-height:42px!important;font-size:13px!important;padding:9px 14px!important;opacity:.86}
.period-controls .danger-btn{min-height:42px!important;font-size:13px!important}

.live-actions{padding:20px 20px 6px!important;gap:13px!important}
.action-btn{min-height:72px!important;border-radius:17px!important;font-size:16px!important;letter-spacing:.01em;box-shadow:inset 0 1px rgba(255,255,255,.10),0 10px 25px rgba(0,0,0,.17)!important}
.action-btn.goal-btn{box-shadow:inset 0 1px rgba(255,255,255,.25),0 10px 28px rgba(16,205,91,.16)!important}

.power-play-panel{margin:10px 20px 20px!important;padding:18px 20px!important;border-radius:20px!important}
.power-play-panel:not(.is-active){background:linear-gradient(135deg,rgba(113,75,188,.18),rgba(17,33,44,.96))!important}
.power-play-panel.is-active{min-height:86px!important}
.power-play-panel.is-active .power-play-title::before{content:'⚡ ';color:#ff6b67}

.live-columns{padding:0 20px!important;gap:14px!important}
.live-columns>div{padding:16px!important;border-radius:18px!important;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.02))!important}
.live-columns h3{font-size:15px!important;letter-spacing:.01em}
.live-columns .summary-row{padding:11px 12px!important;border-radius:11px!important;font-size:13px!important}

.setup-section:has(#eventTimeline){margin-top:22px!important;padding:18px 0 2px!important}
.setup-section:has(#eventTimeline)>h3{padding:0 20px!important;font-size:17px!important;letter-spacing:.01em}
.live-card .event-list{position:relative!important;padding:4px 20px 24px 42px!important}
.live-card .event-list:before{
  content:"";position:absolute;left:27px;top:17px;bottom:29px;width:2px;
  background:linear-gradient(180deg,rgba(42,225,118,.55),rgba(148,177,190,.10));
}
.live-card .event-row{position:relative!important;min-height:54px!important;grid-template-columns:54px 1fr!important;padding:10px 13px!important;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.025))!important}
.live-card .event-row:before{
  content:"";position:absolute;left:-19px;top:21px;width:9px;height:9px;border-radius:50%;
  background:#25df72;box-shadow:0 0 0 4px rgba(37,223,114,.10),0 0 12px rgba(37,223,114,.45);
}
.live-card .event-minute{font-size:12px!important}

@media(max-width:700px){
  .scoreboard-hero{min-height:330px!important;padding:28px 7px 23px!important}
  .team-crest{width:83px!important;height:99px!important;font-size:21px!important;border-width:4px!important}
  .team-crest:after{width:17px!important;height:17px!important;transform:translateY(30px)!important}
  .team-name{max-width:120px!important;font-size:13px!important}
  .scoreline{gap:8px!important}.scoreline strong{font-size:61px!important}.scoreline .score-divider{font-size:34px!important}
  .match-clock-pill{margin:12px 0 9px!important;padding:9px 17px!important}.match-clock-pill span{font-size:29px!important}
  .scoreboard-hero .timer-btn{min-width:116px!important;min-height:42px!important}
  .live-actions{padding:16px 12px 5px!important;gap:10px!important}.action-btn{min-height:61px!important;font-size:14px!important}
  .power-play-panel{margin:9px 12px 16px!important;padding:16px!important}
  .live-columns{padding:0 12px!important}.live-card .event-list{padding-left:34px!important;padding-right:12px!important}.live-card .event-list:before{left:19px!important}
  .live-card .event-row:before{left:-15px!important}
  .setup-section:has(#eventTimeline)>h3{padding-left:12px!important}
}

/* =========================================================
   v19.3 coordinated polish pass
   Based on real-device screenshots: stronger identity,
   tighter match-centre composition and clearer hierarchy.
   ========================================================= */
:root{--v193-panel:#0b2633;--v193-panel2:#102f3e;--v193-soft:#9bb5c2;--v193-green:#25df72}
body{font-weight:500}.app-header h1{font-weight:800;letter-spacing:-.045em}.eyebrow,.power-play-kicker{letter-spacing:.16em}
.card{box-shadow:0 16px 42px rgba(0,0,0,.18)}

/* Home / club identity */
.hero-card{min-height:210px!important;justify-content:center!important;padding:25px!important}
.home-team-lockup{display:flex;align-items:center;gap:18px;margin:3px 0 8px}.home-crest{width:72px!important;height:84px!important;font-size:19px!important;flex:0 0 auto}.home-crest:after{width:14px!important;height:14px!important;transform:translateY(25px)!important}
.home-team-label{margin:0 0 4px;color:#70f0a4;font-size:10px;font-weight:900;letter-spacing:.17em}.home-team-lockup h2{margin:0;font-size:27px}.hero-card>p:not(.muted){margin-left:90px;margin-top:0}.hero-actions{margin-left:90px}
.stat-card{min-height:100px!important;padding:16px!important}.stat-card strong{font-size:31px!important}.stat-card span{font-size:11px!important;text-transform:uppercase;letter-spacing:.08em}
.stats-table-wrap{margin-top:16px;border:1px solid rgba(148,177,190,.13);border-radius:16px;overflow:hidden}.stats-table{margin-top:0!important}.stats-table th{background:rgba(255,255,255,.035);font-size:10px!important;letter-spacing:.09em}.stats-table td{padding-top:12px!important;padding-bottom:12px!important}.player-stat-name{font-weight:750}
.history-card{grid-template-columns:84px 1fr auto!important;padding:16px!important;border-radius:15px!important}.history-opponent{font-size:14px;font-weight:800}.history-result{display:inline-block;margin-top:5px;font-size:12px}

/* Settings identity preview */
.identity-preview,.opponent-preview{display:flex;align-items:center;gap:18px;padding:16px;margin:13px 0 18px;border-radius:18px;background:linear-gradient(135deg,rgba(37,223,114,.09),rgba(255,255,255,.025));border:1px solid rgba(37,223,114,.18)}
.settings-crest,.setup-crest{width:78px!important;height:91px!important;font-size:20px!important;flex:0 0 auto}.settings-crest:after,.setup-crest:after{width:14px!important;height:14px!important;transform:translateY(27px)!important}.identity-preview-copy,.opponent-preview>div:last-child{display:grid;gap:3px}.identity-preview span,.opponent-preview span{font-size:9px;color:#70f0a4;font-weight:900;letter-spacing:.15em}.identity-preview strong,.opponent-preview strong{font-size:17px}.identity-preview small,.opponent-preview small{color:var(--muted);line-height:1.35}
.settings-grid,.team-identity-grid,.match-details-grid{gap:14px!important}.player-row{min-height:52px!important;border-radius:13px!important}.player-number{font-size:16px;font-weight:900}.player-name{font-weight:700}

/* Match setup: reduce the feeling of three enormous repeated lists */
#matchSetupView .card{max-width:760px;margin-inline:auto}#matchSetupView .setup-section{padding-top:18px!important}#matchSetupView .selection-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}#matchSetupView .selection-row{margin:0!important;min-height:47px!important;padding:10px 12px!important}#matchSetupView .summary-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}#matchSetupView .summary-row{margin:0!important}

/* Broadcast-style live match centre */
.live-card{overflow:hidden!important}.live-topbar{padding:17px 20px!important}.scoreboard-hero{min-height:350px!important;padding:27px 22px 24px!important;grid-template-columns:minmax(125px,1fr) minmax(210px,1.1fr) minmax(125px,1fr)!important;align-items:center!important;background:radial-gradient(circle at 13% 20%,rgba(230,248,255,.20),transparent 12%),radial-gradient(circle at 87% 20%,rgba(230,248,255,.20),transparent 12%),linear-gradient(180deg,rgba(2,33,41,.16),rgba(1,19,25,.34)),repeating-linear-gradient(90deg,rgba(20,121,78,.11) 0 13%,rgba(10,83,61,.08) 13% 26%)!important}
.team-panel{align-self:center!important;gap:12px!important}.team-crest{width:105px!important;height:123px!important;font-size:28px!important}.team-crest:after{width:19px!important;height:19px!important;transform:translateY(36px)!important}.team-name{font-size:14px!important;line-height:1.15!important;max-width:165px!important;min-height:34px;display:flex;align-items:flex-start;justify-content:center}
.score-centre{align-self:center!important;transform:none!important}.match-stage{margin-bottom:5px}.scoreline strong{font-size:80px!important;line-height:.95}.scoreline .score-divider{font-size:39px!important}.match-clock-pill{margin:13px 0 9px!important}.match-clock-pill span{font-size:35px!important}.period-status{margin-top:0!important}.scoreboard-hero .timer-btn{margin-top:7px!important}
.score-meta-line{min-height:54px!important}.score-meta-line strong{padding:5px 10px;border-radius:999px;background:rgba(37,223,114,.10)}
.live-card.pp-score-active .score-meta-line strong{color:#ff8a84;background:rgba(255,78,76,.12);box-shadow:0 0 0 1px rgba(255,92,88,.25)}.live-card.pp-score-active .score-meta-line:after{content:'POWER PLAY';color:#ff7c77;font-size:9px;font-weight:900;letter-spacing:.13em}
.period-controls{justify-content:flex-end!important}.period-controls .secondary-btn{max-width:180px!important;opacity:.68}.period-controls .primary-btn,.period-controls .danger-btn{max-width:220px!important}
.live-actions{grid-template-columns:1.15fr 1fr!important}.action-btn{font-size:15px!important}.goal-btn{font-size:17px!important}.power-play-panel{box-shadow:inset 0 1px rgba(255,255,255,.04)}.power-play-panel.is-active{box-shadow:0 0 0 1px rgba(255,87,82,.32),0 0 30px rgba(255,68,68,.18),inset 0 1px rgba(255,255,255,.05)!important}
.live-columns>div{min-height:250px}.live-columns .summary-row{min-height:43px!important;display:flex;align-items:center}.setup-section:has(#eventTimeline){background:rgba(0,0,0,.10)}

/* Reports: make them feel like a match result rather than a form */
#matchReportView>.card{background:linear-gradient(180deg,#0d2a38,#071d27)!important}.report-team-head{justify-content:center!important;gap:20px!important;margin:10px 0}.report-team-head h2{font-size:22px!important;text-align:center}.mini-crest{width:67px!important;height:78px!important;font-size:17px!important}.mini-crest:after{width:12px!important;height:12px!important;transform:translateY(23px)!important}.report-score{max-width:560px;margin:18px auto 26px!important}.report-score>div{padding:22px!important}.report-score strong{font-size:32px!important}.report-grid{gap:16px!important}.report-grid .setup-section{background:rgba(255,255,255,.025);border:1px solid rgba(148,177,190,.12);border-radius:17px;padding:16px!important}

/* Dialog hierarchy */
dialog{border-radius:22px!important}dialog h2{font-size:23px!important;margin-bottom:17px!important}.dialog-card{padding:22px!important}.dialog-actions{padding-top:4px}.dialog-card label{font-size:12px;font-weight:800}.dialog-card select{min-height:50px}.dialog-card .primary-btn{min-height:50px}

@media(max-width:700px){
  .home-team-lockup{gap:12px}.home-crest{width:59px!important;height:69px!important;font-size:16px!important}.home-crest:after{width:12px!important;height:12px!important;transform:translateY(20px)!important}.home-team-lockup h2{font-size:23px}.hero-card>p:not(.muted),.hero-actions{margin-left:0}.hero-card>p:not(.muted){margin-top:9px}
  #matchSetupView .selection-list,#matchSetupView .summary-list{grid-template-columns:1fr}
  .identity-preview,.opponent-preview{padding:13px;gap:13px}.settings-crest,.setup-crest{width:63px!important;height:74px!important;font-size:17px!important}.settings-crest:after,.setup-crest:after{width:12px!important;height:12px!important;transform:translateY(21px)!important}
  .scoreboard-hero{min-height:305px!important;padding:22px 7px 20px!important;grid-template-columns:1fr 1.35fr 1fr!important}.team-crest{width:74px!important;height:87px!important;font-size:20px!important}.team-crest:after{width:15px!important;height:15px!important;transform:translateY(26px)!important}.team-name{font-size:12px!important;max-width:108px!important}.scoreline strong{font-size:58px!important}.scoreline .score-divider{font-size:30px!important}.match-clock-pill span{font-size:27px!important}.match-clock-pill{padding:8px 13px!important}.live-actions{grid-template-columns:1fr 1fr!important}.action-btn{font-size:13px!important}.goal-btn{font-size:14px!important}.period-controls .secondary-btn{max-width:150px!important}.live-columns>div{min-height:0}.report-team-head{gap:10px!important}.mini-crest{width:54px!important;height:63px!important;font-size:14px!important}
}

/* =========================================================
   v19.4 player statistics + final polish
   Every player stat remains visible without horizontal scroll.
   ========================================================= */
.player-stats-list{display:grid;gap:12px;padding:2px}
.player-stat-card{border:1px solid rgba(148,177,190,.16);border-radius:17px;overflow:hidden;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018));box-shadow:inset 0 1px rgba(255,255,255,.035)}
.player-stat-head{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:12px;padding:14px 15px;border-bottom:1px solid rgba(148,177,190,.11)}
.player-stat-shirt{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(145deg,#183f50,#0d2a38);border:1px solid rgba(37,223,114,.22);color:#fff;font-size:17px;font-weight:900}
.player-stat-identity{display:grid;gap:2px;min-width:0}.player-stat-identity strong{font-size:14px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-stat-identity span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.player-stat-feature{text-align:right;display:grid}.player-stat-feature strong{font-size:22px;color:var(--green)}.player-stat-feature span{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.player-stat-grid{display:grid;grid-template-columns:repeat(6,1fr);padding:10px 8px 12px}.player-stat-grid>div{text-align:center;padding:5px 3px;border-right:1px solid rgba(148,177,190,.09)}.player-stat-grid>div:last-child{border-right:0}.player-stat-grid strong{display:block;color:#fff;font-size:16px;line-height:1.1}.player-stat-grid span{display:block;margin-top:5px;color:#8fa8b5;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.player-stat-grid .stat-accent-goal strong{color:#4bea8a}.player-stat-grid .stat-accent-assist strong{color:#66adff}.player-stat-grid .stat-accent-pp strong{color:#c69aff}
#playerStatsTable.stats-table-wrap{border:0!important;overflow:visible!important;background:transparent!important}
.history-card{transition:transform .12s ease,border-color .15s ease,background .15s ease}.history-card:active{transform:scale(.99)}
@media(max-width:560px){.player-stat-head{grid-template-columns:42px 1fr auto;padding:12px}.player-stat-shirt{width:38px;height:38px}.player-stat-grid{grid-template-columns:repeat(3,1fr);row-gap:8px}.player-stat-grid>div:nth-child(3){border-right:0}.player-stat-grid>div:nth-child(-n+3){padding-bottom:9px;border-bottom:1px solid rgba(148,177,190,.09)}.player-stat-grid strong{font-size:17px}.player-stat-grid span{font-size:8px}.player-stat-feature strong{font-size:20px}}


/* =========================================================
   v19.5 PLAYER STATISTICS: COMPACT + EXPANDABLE
   ========================================================= */
.player-stat-toggle{width:100%;display:grid;grid-template-columns:48px minmax(120px,1fr) auto 24px;align-items:center;gap:12px;border:0;text-align:left;cursor:pointer;color:inherit;background:transparent}
.player-stat-toggle:focus-visible{outline:2px solid var(--green);outline-offset:-2px;border-radius:14px}
.player-stat-mini{display:flex;align-items:center;justify-content:flex-end;gap:14px;white-space:nowrap}
.player-stat-mini span{color:var(--muted);font-size:11px;font-weight:700}
.player-stat-mini strong{color:#fff;font-size:14px;margin-right:3px}
.player-stat-mini .mini-goal strong{color:#4bea8a}
.player-stat-mini .mini-assist strong{color:#66adff}
.player-stat-chevron{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;color:#b8cad3;font-size:18px;transition:transform .18s ease,background .18s ease}
.player-stat-card.is-expanded .player-stat-chevron{transform:rotate(180deg);background:rgba(255,255,255,.06);color:#fff}
.player-stat-details{border-top:1px solid rgba(148,177,190,.11)}
.player-stat-details[hidden]{display:none}
.player-stat-card:not(.is-expanded) .player-stat-head{border-bottom:0}
@media(max-width:720px){
  .player-stat-toggle{grid-template-columns:42px minmax(95px,1fr) 24px;gap:10px;padding:12px 13px!important}
  .player-stat-mini{grid-column:2;grid-row:2;justify-content:flex-start;gap:10px;flex-wrap:wrap}
  .player-stat-chevron{grid-column:3;grid-row:1;}
  .player-stat-shirt{grid-column:1;grid-row:1 / span 2;width:38px;height:38px}
  .player-stat-identity{grid-column:2;grid-row:1}
  .player-stat-mini span{font-size:10px}
  .player-stat-mini strong{font-size:13px}
}
@media(max-width:420px){
  .player-stat-mini{gap:8px}
  .player-stat-mini span{font-size:9px}
}


/* v19.6 first-use onboarding */
.first-use-banner{margin:-2px 0 16px;padding:18px 18px 16px;border-radius:18px;background:linear-gradient(135deg,rgba(32,214,107,.14),rgba(32,214,107,.035));border:1px solid rgba(32,214,107,.26)}
.first-use-banner h3{margin:2px 0 6px;font-size:21px;color:#fff}
.first-use-banner p{margin:0}
.first-use-continue{margin-top:4px;grid-column:1/-1}
.first-use-continue .primary-btn{width:100%}

/* v19.6.1 first-use continuation
   The primary next-step action sits directly beneath the squad it depends on. */
.first-use-continue{margin-top:18px;padding-top:18px;border-top:1px solid var(--line);text-align:center}
.first-use-continue .primary-btn{width:100%}
.first-use-continue .primary-btn:disabled{opacity:.45;filter:saturate(.35);cursor:not-allowed}
.first-use-continue p{margin:8px 0 0}
