/* AiScore-style table structure, retaining the requested Xoilac dark palette. */
#livescore-app{--als-bg:#24282c;--als-head:#292d2e;--als-line:#343940;--als-muted:#afb4ba;--als-active:#8bdd78;color:#fff;font:13px/1.45 Raleway,Arial,sans-serif}
#livescore-app *{box-sizing:border-box}
#livescore-app button,#livescore-app input,#livescore-app select{font:inherit}
#livescore-app button{cursor:pointer}
#livescore-app .als-widget{border:1px solid var(--als-line);background:var(--als-bg);border-radius:6px;padding:16px}
#livescore-app .als-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:16px}
#livescore-app .als-tabs{display:flex;gap:8px;flex:1 1 auto}
#livescore-app .als-tabs button{padding:10px 16px;min-height:40px;border:1px solid var(--als-line);background:#323638;color:#ddd;border-radius:5px;font-weight:700;white-space:nowrap}
#livescore-app .als-tabs button[aria-selected=true]{background:#36523f;border-color:#62835c;color:#9ae080}
#livescore-app .als-tabs button[data-mode=live][aria-selected=true]{background:#c9251d;border-color:#c9251d;color:#fff}
#livescore-app .als-date{display:flex;align-items:center;border:1px solid var(--als-line);border-radius:5px;height:40px;background:#292d2e}
#livescore-app .als-date button{background:none;border:0;color:var(--als-muted);font:28px/1 Arial;width:26px;height:38px;padding:0}
#livescore-app .als-date label{display:flex;align-items:center;gap:6px;margin:0}
#livescore-app .als-date input{width:125px;padding:4px 0;color:#fff;color-scheme:dark;background:transparent;border:0}
#livescore-app .als-sort{display:flex;align-items:center;gap:6px;margin:0;white-space:nowrap;color:var(--als-muted)}
#livescore-app .als-sort input{accent-color:#8bdd78}
#livescore-app select{background:#292d2e;color:#ddd;border:1px solid var(--als-line);border-radius:5px;padding:8px;min-width:0;max-width:100%;height:40px}
#livescore-app .als-filter{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;color:var(--als-muted);font-size:12px}
#livescore-app .als-filter select{max-width:320px}
#livescore-app .als-league{margin-bottom:12px;border:1px solid var(--als-line);border-radius:5px;overflow:hidden}
#livescore-app .als-league-head{display:grid;grid-template-columns:28px minmax(0,1fr) 156px;align-items:center;gap:8px;padding:10px 12px;background:var(--als-head);min-height:46px}
#livescore-app .als-league-name{display:flex;align-items:center;gap:10px;min-width:0}
#livescore-app .als-league-name img{width:24px;height:24px;object-fit:contain;flex-shrink:0}
#livescore-app .als-league-name strong{font:600 15px/22px Oswald,Arial,sans-serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#livescore-app .als-price-head,#livescore-app .als-prices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));text-align:center;gap:4px}
#livescore-app .als-price-head{color:var(--als-muted);font-size:12px}
#livescore-app .als-row{display:grid;grid-template-columns:28px 125px minmax(0,1fr) 115px 156px;align-items:center;gap:8px;min-height:56px;padding:10px 12px;border-top:1px solid var(--als-line)}
#livescore-app .als-star{border:0;background:none;color:#81898f;font:27px/30px Arial;padding:0;width:28px;height:32px}
#livescore-app .als-star.is-favorite{color:#ffad29}
#livescore-app .als-meta{display:flex;align-items:center;gap:8px;color:var(--als-muted);font-size:12px;min-width:0}
#livescore-app .als-state{min-width:0;line-height:18px;font-size:11px}
#livescore-app .is-live{color:var(--als-active)}
#livescore-app .als-teams{display:grid;grid-template-columns:minmax(0,1fr) 56px minmax(0,1fr);align-items:center;gap:10px;min-width:0}
#livescore-app .als-team{display:flex;align-items:center;gap:8px;min-width:0;position:relative}
#livescore-app .als-home{justify-content:flex-end;text-align:right}
#livescore-app .als-team span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#livescore-app .als-team img{width:24px;height:24px;object-fit:contain;flex-shrink:0}
#livescore-app .als-score{text-align:center;font:600 15px/22px Arial,sans-serif;white-space:nowrap}
#livescore-app .als-score strong{display:inline-flex;align-items:center;justify-content:center;gap:4px}
#livescore-app .als-score:has(.als-vs) .als-score-separator,#livescore-app .als-pending{display:none}
#livescore-app .als-mobile-options,#livescore-app .als-details{display:none}
#livescore-app .als-score small{display:block;font:9px/12px Arial;color:var(--als-muted)}
#livescore-app .als-red{font:9px/14px Arial;color:#fff;background:#c92626;min-width:10px;text-align:center;border-radius:2px;flex-shrink:0}
#livescore-app .als-stats{display:flex;justify-content:center;gap:8px;color:var(--als-muted);font-size:11px;white-space:nowrap}
#livescore-app .als-prices{font:13px/20px Arial,sans-serif;color:#ddd}
#livescore-app .als-time-head{display:block}
#livescore-app .als-updated{color:var(--als-muted);font-size:11px;margin-top:12px}
#livescore-app .als-notice{padding:40px 12px;text-align:center;color:var(--als-muted);min-height:150px}
#livescore-app .als-more,#livescore-app .als-retry{display:block;margin:16px auto;padding:8px 20px;background:#36523f;border:1px solid #62835c;border-radius:5px;color:#9ae080}
#livescore-app button:focus-visible,#livescore-app select:focus-visible,#livescore-app input:focus-visible{outline:2px solid #8bdd78;outline-offset:2px}
@media(max-width:991.98px){
 #livescore-app .als-widget{padding:10px}
 #livescore-app .als-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 30px;gap:6px;margin-bottom:10px}
 #livescore-app .als-tabs{grid-column:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}
 #livescore-app .als-tabs button{padding:8px 3px;font-size:11px;white-space:normal;line-height:16px}
 #livescore-app .als-mobile-options{display:block;grid-column:2;grid-row:1;border:0;background:none;color:#ddd;font:25px/40px Arial;padding:0}
 #livescore-app .als-date{grid-column:1/-1;justify-content:space-between;display:none}
 #livescore-app .als-sort{font-size:10px;white-space:normal;grid-column:1/-1;display:none}
 #livescore-app #als-market{grid-column:1/-1;display:none}
 #livescore-app select{font-size:11px}
 #livescore-app .als-filter{align-items:flex-start;flex-direction:column;gap:6px;font-size:10px;display:none}
 #livescore-app.als-options-open .als-date,#livescore-app.als-options-open .als-sort,#livescore-app.als-options-open .als-filter{display:flex}
 #livescore-app.als-options-open #als-market{display:block}
 #livescore-app .als-filter select{width:100%;max-width:none}
 #livescore-app .als-league-head{grid-template-columns:24px minmax(0,1fr);padding:8px;gap:6px}
 #livescore-app .als-league-name{gap:6px}
 #livescore-app .als-league-name strong{font-size:13px}
 #livescore-app .als-price-head{display:none}
 #livescore-app .als-row{grid-template-columns:20px 48px minmax(0,1fr) 20px 26px;grid-template-rows:minmax(24px,auto) minmax(24px,auto);gap:2px 4px;padding:8px 6px}
 #livescore-app .als-row>.als-star{grid-row:1/3;grid-column:1;width:20px;font-size:24px}
 #livescore-app .als-meta{grid-column:2;grid-row:1/3;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:10px;white-space:nowrap}
 #livescore-app .als-state{font-size:11px}
 #livescore-app .als-teams{display:contents}
 #livescore-app .als-team{grid-column:3;justify-content:flex-start;gap:5px;font-size:13px;text-align:left}
 #livescore-app .als-home{grid-row:1}
 #livescore-app .als-away{grid-row:2}
 #livescore-app .als-team img{order:0}
 #livescore-app .als-team span{order:1}
 #livescore-app .als-red{order:2}
 #livescore-app .als-team img{width:20px;height:20px}
 #livescore-app .als-score{grid-column:5;grid-row:1/3;font-size:14px;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
 #livescore-app .als-score strong{display:flex;flex-direction:column;gap:2px;line-height:24px}
 #livescore-app .als-score .als-pending{display:block}
 #livescore-app .als-score-separator,#livescore-app .als-vs{display:none}
 #livescore-app .als-score small{white-space:normal;font-size:8px;line-height:11px}
 #livescore-app .als-details{display:block;grid-column:4;grid-row:1/3;width:18px;height:18px;background:#ffad29;border:0;border-radius:50%;color:#fff;font:16px/18px Arial;padding:0;align-self:center}
 #livescore-app .als-stats{display:none;grid-column:2/-1;grid-row:3;justify-content:flex-start;font-size:10px;margin-top:6px}
 #livescore-app .als-prices{display:none;grid-column:2/-1;grid-row:4;font-size:12px;background:#292d2e;border-radius:3px;padding:4px}
 #livescore-app .als-row.is-open .als-stats{display:flex}
 #livescore-app .als-row.is-open .als-prices{display:grid}
 #livescore-app .als-prices span:before{content:'1: ';font-size:9px;color:var(--als-muted)}
 #livescore-app .als-prices span:nth-child(2):before{content:'X: '}
 #livescore-app .als-prices span:nth-child(3):before{content:'2: '}
 #livescore-app[data-market=asia] .als-prices span:before{content:'Chủ: '}
 #livescore-app[data-market=asia] .als-prices span:nth-child(2):before{content:'Chấp: '}
 #livescore-app[data-market=asia] .als-prices span:nth-child(3):before{content:'Khách: '}
 #livescore-app[data-market=bs] .als-prices span:before{content:'Tài: '}
 #livescore-app[data-market=bs] .als-prices span:nth-child(2):before{content:'Mốc: '}
 #livescore-app[data-market=bs] .als-prices span:nth-child(3):before{content:'Xỉu: '}
}
@media(max-width:360px){#livescore-app .als-team{font-size:12px}#livescore-app .als-tabs button{font-size:10px}}

/* Local draft: scoreboard colors and columns measured from the Xoilac reference. */
#livescore-app {
 --als-bg:#1b1b1b;--als-head:#2c2c2c;--als-line:#343434;
 --als-muted:#b4bbc4;--als-active:#00ff5d;font-size:15px;
}
#livescore-app .als-widget {padding:12px;border-radius:4px}
#livescore-app .als-tabs button {font-size:14px;font-weight:700;color:#fff}
#livescore-app .als-tabs button[data-mode][aria-selected=true] {
 background:linear-gradient(130deg,#1553ef -6.25%,#0c3089 24.62%,#0c1a4c 70.73%);
 border-color:#264da0;color:#fff;
}
#livescore-app .als-tabs button[data-mode=live][aria-selected=true] {
 background:#c9251d;border-color:#c9251d;color:#fff;
}
#livescore-app .als-columns {display:none}
#livescore-app .als-league {margin-bottom:0;border:0;border-radius:0}
#livescore-app .als-league-head {grid-template-columns:28px minmax(0,1fr);border-top:1px solid var(--als-line);min-height:48px}
#livescore-app .als-league-name strong {font-size:18px;line-height:26px;color:#fff}
#livescore-app .als-team {font-size:16px;font-weight:700;color:#fff}
#livescore-app .als-team img {width:32px;height:32px}
#livescore-app .als-meta time {color:#00ff5d;font-weight:700}
#livescore-app .als-state.is-live {color:#ffc800}
#livescore-app .als-score {color:#fff}
#livescore-app .als-score strong {
 min-width:76px;min-height:32px;gap:0;padding:2px;border-radius:5px;
 background:linear-gradient(130deg,#1553ef -6.25%,#0c3089 24.62%,#0c1a4c 70.73%);
}
#livescore-app .als-score strong:has(.als-vs) {background:none}
#livescore-app .als-score strong>span {flex:1;min-width:26px;line-height:28px;border-radius:4px}
#livescore-app .als-score strong>span.is-leading {
 background:linear-gradient(0deg,#2532d5,#070e59 76.25%);
 box-shadow:inset 0 0 0 1px #3344d8;
}
#livescore-app .als-score-separator {padding:0 3px;font-weight:700}
#livescore-app .als-ht {color:#fff}
#livescore-app .als-corners {color:#4b9eff}
#livescore-app .als-prices {color:#dc77a5}
#livescore-app[data-market=bs] .als-prices {color:#78a9ee}

@media(min-width:992px) {
 #livescore-app .als-row,#livescore-app .als-columns {
  display:grid;grid-template-columns:240px minmax(0,1fr) 60px 68px 174px;
  align-items:center;gap:8px;padding:12px;min-height:64px;
 }
 #livescore-app .als-columns {
  min-height:44px;padding-top:8px;padding-bottom:8px;
  background:var(--als-head);color:#fff;font-size:14px;font-weight:700;
 }
 #livescore-app .als-columns>span:nth-child(3),#livescore-app .als-columns>span:nth-child(4) {text-align:center}
 #livescore-app .als-teams {grid-template-columns:minmax(0,1fr) 76px minmax(0,1fr)}
 #livescore-app .als-col-score {text-align:center}
 #livescore-app .als-row:nth-child(even) {background:#232323}
 #livescore-app .als-row:hover {background:#292d33}
 #livescore-app .als-stats {display:contents}
 #livescore-app .als-stats>.als-ht,#livescore-app .als-stats>.als-corners {text-align:center;white-space:nowrap}
 #livescore-app .als-stat-label {display:none}
 #livescore-app .als-ht,#livescore-app .als-corners {font-size:14px;line-height:22px;font-weight:700}
}

/* Keep league and kickoff together instead of adding a separate league row. */
#livescore-app .als-meta {gap:10px}
#livescore-app .als-league-inline {
 display:flex;align-items:center;gap:6px;min-width:0;flex:1;
 padding:0;border:0;background:none;color:#fff;text-align:left;
}
#livescore-app .als-league-inline img {width:24px;height:24px;object-fit:contain;flex-shrink:0}
#livescore-app .als-league-inline strong {
 font-family:'XLS Barlow',Arial,sans-serif;font-size:16px;line-height:24px;
 font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
#livescore-app .als-league-inline.is-favorite {color:#ffad29}
#livescore-app .als-kickoff {display:flex;align-items:center;gap:8px;flex-shrink:0}

@media(max-width:991.98px) {
 #livescore-app .als-widget {padding:8px}
 #livescore-app .als-tabs button {font-size:12px;line-height:18px}
 #livescore-app .als-league-head {grid-template-columns:24px minmax(0,1fr)}
 #livescore-app .als-league-name strong {font-size:16px;line-height:24px}
 #livescore-app .als-row {
  grid-template-columns:20px 48px minmax(0,1fr) 22px 32px;
  grid-template-rows:minmax(28px,auto) minmax(28px,auto);min-height:76px;
 }
 #livescore-app .als-team {font-size:14px;line-height:22px;font-weight:700}
 #livescore-app .als-team img {width:24px;height:24px}
 #livescore-app .als-score strong {min-width:30px;min-height:56px;padding:1px;gap:0}
 #livescore-app .als-score strong>span {min-width:28px;line-height:27px;flex:0 0 auto}
 #livescore-app .als-stats {font-weight:700;gap:16px}
 #livescore-app .als-prices {padding:6px;font-weight:700}
 #livescore-app .als-prices span:before {font-size:11px;color:#fff}
}

@media(max-width:991.98px) {
 #livescore-app .als-row {grid-template-columns:minmax(0,1fr) 22px 32px;grid-template-rows:28px minmax(28px,auto) minmax(28px,auto);gap:3px 4px}
 #livescore-app .als-meta {
  grid-column:1/-1;grid-row:1;flex-direction:row;align-items:center;justify-content:space-between;
 }
 #livescore-app .als-row>.als-star {grid-row:2/4}
 #livescore-app .als-team {grid-column:1}
 #livescore-app .als-details {grid-column:2}
 #livescore-app .als-score {grid-column:3}
 #livescore-app .als-home {grid-row:2}
 #livescore-app .als-away {grid-row:3}
 #livescore-app .als-score,#livescore-app .als-details {grid-row:2/4}
 #livescore-app .als-stats {grid-column:1/-1;grid-row:4}
 #livescore-app .als-prices {grid-column:1/-1;grid-row:5}
}
