/*
   scheveningen.css
   Dynamic CSS styling for Scheveningen system tables in OlimpBase / IndBase
   Fully customizable via CSS Custom Properties (Variables)
*/
:root {
  /* Colors */
  --c-sh-grid: #A9A9A9;          /* Border/grid color matching indbase! */
  --c-sh-head-bg: #EEEECC;      /* Cream header background matching indbase! */
  --c-sh-cell-bg: #F2F2F2;      /* Default cells background (Styl indbase!) */
  --c-sh-white: #FFFFFF;        /* White pieces cell background */
  --c-sh-black: #CCCCCC;        /* Black pieces cell background */
  --c-sh-text: #000000;         /* Primary text color */
  --c-sh-link: #0000FF;         /* Link color */

  /* Typography / Fonts (Georgia applied universally) */
  --font-sh-main: Georgia, "Times New Roman", serif;



  /* Column Widths (Szerokości kolumn - automatyczny rachunek łączny) */
  --w-sh-pos: 30px;             /* Position column (lp.) */
  --w-sh-name: 250px;           /* Player name column */
  --w-sh-flag: 35px;            /* Flag column */
  --w-sh-elo: 40px;             /* Elo column */
  --w-sh-game: 45px;            /* Individual game column */
  --w-sh-pts: 50px;             /* Points column */
  --w-sh-gms: 40px;             /* Games column */
  --w-sh-plus: 32px;            /* Wins (+) column */
  --w-sh-eq: 32px;              /* Draws (=) column */
  --w-sh-minus: 32px;           /* Losses (-) column */
  --w-sh-pct: 50px;             /* Percentage (%) column */
  --w-sh-elo-p: 50px;           /* Elo Performance column */
  /* Heights */
  --h-sh-row: 22px;             /* Standard row height matching indbase! */


  /* Customization variables for team perspective labels (lewy-górny róg) */
  --font-sh-team-top-size: 12pt;
  --font-sh-team-bottom-size: 12pt;
  --font-sh-team-weight: bold;          /* Font weight for team names (bold / normal) */
  --align-sh-team-top: right;           /* Alignment for top team label (left / center / right) */
  --align-sh-team-bottom: center;       /* Alignment for bottom team label (left / center / right) */
  --padding-sh-team-right: 8px;         /* Right padding for right-aligned team label */

  /* Customization variable for team names in match score (wynik sumaryczny) */
  --font-sh-score-team-size: 12pt;

  /* Customization variable for match score (Wymaganie 5: wielkość czcionki z wynikiem meczu) */
  --font-sh-score-size: 12pt;

  /* Match Results Table (Wyniki meczu) */
  --w-mr-name: 250px;           /* Name of team column */
  --w-mr-flag: 35px;            /* Team flag column */
  --w-mr-elo: 45px;             /* Team average Elo column */
  --w-mr-round: 45px;           /* Round column */
  --w-mr-total: 60px;           /* Total points column */
  --h-mr-row: 22px;             /* Height of Match Results cells */
  --c-mr-name-color: #000000;   /* Color of team name in Match Results */
  --c-mr-score-color: #000000;  /* Color of round scores in Match Results (czarna czcionka!) */
  --c-mr-total-color: #000000;  /* Color of total score in Match Results */
  --font-mr-score-weight: normal; /* Font weight of round scores (normalna czcionka!) */

  /* Round by Round */
  --w-rbr-team-name: 250px;
  --w-rbr-team-elo: 45px;
  --w-rbr-team-flag: 35px;
  --w-rbr-score: 70px;
  --w-rbr-player-name: 250px;
  --w-rbr-color-elo: 45px;
  --w-rbr-player-elo: 45px;
  --w-rbr-player-flag: 35px;
  --h-rbr-head: 25px;
  --h-rbr-team-row: 25px;
  --h-rbr-game-row: 22px;
  --h-rbr-summary: 25px;


  /* Individual standings */
  --w-ind-pos: 55px;
  --w-ind-name: 250px;
  --w-ind-elo: 45px;
  --w-ind-flag: 35px;
  --w-ind-team: 50px;
  --w-ind-tflag: 35px;
  --w-ind-tb: 55px;
  --w-ind-stat: 35px;
  --h-ind-head: 24px;
  --h-ind-row: 22px;

  --h-ind-title: 28px;
  --font-ind-title-size: 12pt;

  /* Batch multi-table */
  --w-bm-pos: 55px;
  --w-bm-name: 250px;
  --w-bm-flag: 35px;
  --w-bm-elo: 45px;
  --w-bm-stage: 95px;
  --w-bm-tb: 55px;
  --w-bm-gms: 40px;
  --w-bm-stat: 35px;
  --h-bm-head: 24px;
  --h-bm-row: 22px;
  --font-bm-head-size: 10pt;
  --font-bm-row-size: 10pt;
}

/* Container */
#scheveningen-table-wrapper {
  margin: 20px auto;
  display: block;
  width: max-content; /* Szerokość wynika wyłącznie z rachunku łącznego kolumn */
}

/* Universal Typography enforcement (Wymaganie 4: Georgia dla wszystkich napisów) */
#scheveningen-table,
#scheveningen-table td,
#scheveningen-table a,
.widget-pers-container,
.widget-pers-text {
  font-family: var(--font-sh-main) !important;
}

/* Table Style */
#scheveningen-table {
  border-collapse: separate;
  border-spacing: 1px;
  background-color: var(--c-sh-grid);
  color: var(--c-sh-text);
  border-radius: 0px;
  overflow: hidden;
  transition: opacity 0.2s ease-in-out;
  opacity: 1;
  width: max-content !important;
}

#scheveningen-table td {
  padding: 1px 4px;             /* Compact padding exactly like indbase! */
  height: var(--h-sh-row);
  box-sizing: border-box;
  font-size: 10pt;
  vertical-align: middle;
  text-align: center;
  background-color: var(--c-sh-cell-bg); /* Jasne tło wszystkich komórek a la indbase! */
}

/* Alignment utilities */
#scheveningen-table td.let {
  text-align: left;
  padding-left: 2mm;
}

#scheveningen-table td.rit {
  text-align: right;
  padding-right: 2mm;
}

/* Bold/Header background */
#scheveningen-table td.bog {
  font-weight: bold;
  background-color: var(--c-sh-head-bg) !important;
}

#scheveningen-table td.bog-normal {
  font-weight: normal !important;
  background-color: var(--c-sh-head-bg) !important;
}

/* Wymaganie 4: Wartości points na dole mają być boldem */
#scheveningen-table td.bo {
  font-weight: bold !important;
}

/* Position column has normal font and default f2f2f2 background */
#scheveningen-table .col-pos {
  width: var(--w-sh-pos) !important;
  min-width: var(--w-sh-pos) !important;
  max-width: var(--w-sh-pos) !important;
  font-weight: normal !important;
  background-color: var(--c-sh-cell-bg) !important; /* to jest #F2F2F2 */
  color: #000000 !important;
}

/* Dynamic columns widths mapping */
#scheveningen-table .col-name {
  width: var(--w-sh-name) !important;
  min-width: var(--w-sh-name) !important;
  max-width: var(--w-sh-name) !important;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: left !important;
  padding-left: 8px !important;
}

#scheveningen-table .col-flag {
  width: var(--w-sh-flag) !important;
  min-width: var(--w-sh-flag) !important;
  max-width: var(--w-sh-flag) !important;
}

#scheveningen-table .col-elo {
  width: var(--w-sh-elo) !important;
  min-width: var(--w-sh-elo) !important;
  max-width: var(--w-sh-elo) !important;
}

#scheveningen-table .col-game {
  width: var(--w-sh-game) !important;
  min-width: var(--w-sh-game) !important;
  max-width: var(--w-sh-game) !important;
}

#scheveningen-table .col-pts {
  width: var(--w-sh-pts) !important;
  min-width: var(--w-sh-pts) !important;
  max-width: var(--w-sh-pts) !important;
}

#scheveningen-table .col-gms {
  width: var(--w-sh-gms) !important;
  min-width: var(--w-sh-gms) !important;
  max-width: var(--w-sh-gms) !important;
}

#scheveningen-table .col-plus {
  width: var(--w-sh-plus) !important;
  min-width: var(--w-sh-plus) !important;
  max-width: var(--w-sh-plus) !important;
}

#scheveningen-table .col-eq {
  width: var(--w-sh-eq) !important;
  min-width: var(--w-sh-eq) !important;
  max-width: var(--w-sh-eq) !important;
}

#scheveningen-table .col-minus {
  width: var(--w-sh-minus) !important;
  min-width: var(--w-sh-minus) !important;
  max-width: var(--w-sh-minus) !important;
}

#scheveningen-table .col-pct {
  width: var(--w-sh-pct) !important;
  min-width: var(--w-sh-pct) !important;
  max-width: var(--w-sh-pct) !important;
}

#scheveningen-table .col-elo-p {
  width: var(--w-sh-elo-p) !important;
  min-width: var(--w-sh-elo-p) !important;
  max-width: var(--w-sh-elo-p) !important;
}

/* Match Score Box Custom Styles */
#scheveningen-table .match-score-cell {
  padding: 4px 6px !important;
  background-color: var(--c-sh-head-bg) !important;
  box-sizing: border-box !important;
}

#scheveningen-table .match-score-line {
  margin: 5px 0 !important;
  white-space: nowrap !important;
  font-family: var(--font-sh-main) !important;
}

#scheveningen-table .score-flag {
  max-width: 24px !important;
  max-height: 12px !important;
  vertical-align: middle !important;
  margin: 0 4px !important;
  border: 1px solid #ccc !important;
}

#scheveningen-table td.ib-schev-perspective-cell {
  width: 125px !important;
  min-width: 125px !important;
  max-width: 125px !important;
  height: 100% !important;
  vertical-align: stretch !important;
  padding: 0 !important;
  background-color: #EEEECC !important;
  position: relative !important;
}

.ib-schev-perspective-container {
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  align-items: center !important;
  height: 100% !important;
  box-sizing: border-box !important;
  padding: 2px 5px !important;
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
}

.ib-schev-perspective-label {
  font-family: var(--font-sh-main) !important;
  font-size: 10pt !important;
  font-weight: normal !important;
  cursor: pointer !important;
  text-align: center !important;
  color: var(--c-sh-text) !important;
  line-height: 1.2 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.team1 {
  font-weight: bold !important;
  text-align: center !important;
}

.team2 {
  font-weight: bold !important;
  text-align: right !important;
  padding-right: 8px !important;
}

/* Match Score Table Layout with increased specificity */
#scheveningen-table .match-score-table {
  width: 95% !important;
  border-collapse: collapse !important;
  border: none !important;
  background: transparent !important;
  margin: 0 auto !important;
  padding: 0 !important;
  table-layout: fixed !important;
}

#scheveningen-table .match-score-table tr {
  border: none !important;
  background: transparent !important;
}

#scheveningen-table .match-score-table td {
  border: none !important;
  background: transparent !important;
  padding: 2px 0 !important;
  height: auto !important;
  vertical-align: middle !important;
}

#scheveningen-table .match-score-table td.score-team-name {
  text-align: right !important;
  font-family: var(--font-sh-main) !important;
  font-size: var(--font-sh-score-team-size) !important;
  font-weight: bold !important;
  color: var(--c-sh-text) !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

#scheveningen-table .match-score-table td.score-flag-cell {
  text-align: center !important;
  width: var(--w-sh-flag) !important;
  min-width: var(--w-sh-flag) !important;
  max-width: var(--w-sh-flag) !important;
}

#scheveningen-table .match-score-table td.score-points {
  text-align: center !important;
  width: 50px !important;
  min-width: 50px !important;
  max-width: 50px !important;
  font-family: var(--font-sh-main) !important;
  font-size: var(--font-sh-score-size) !important;
  font-weight: bold !important;
  color: var(--c-sh-text) !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* Additional fine-tuning for team perspective labels */
#label-top {
  writing-mode: horizontal-tb !important;
  margin-bottom: auto !important;
  font-size: var(--font-sh-team-top-size) !important;
  font-weight: var(--font-sh-team-weight) !important;
  text-align: var(--align-sh-team-top) !important;
  padding-right: var(--padding-sh-team-right) !important;
}

#label-bottom {
  writing-mode: horizontal-tb !important;
  margin-top: auto !important;
  font-size: var(--font-sh-team-bottom-size) !important;
  font-weight: var(--font-sh-team-weight) !important;
  text-align: var(--align-sh-team-bottom) !important;
}

#scheveningen-table .diagonal-name {
  text-align: left !important;
  padding-left: 8px !important;
  background-color: #f2f2f2 !important;
  position: relative !important;
}

#scheveningen-table .diagonal-spacer {
  background-color: #f2f2f2 !important;
  box-shadow: none !important;
}

.ib-schev-revert-btn {
  cursor: pointer !important;
}

/* ==========================================================================
   Match Results Table Styles (type=Match classic style fallback)
   ========================================================================== */
.ib-schev-match-table {
  border-collapse: separate !important;
  border-spacing: 1px !important;
  background-color: var(--c-sh-grid) !important;
  color: var(--c-sh-text) !important;
  font-family: var(--font-sh-main) !important;
  margin: 20px auto !important;
  width: max-content !important;
}

.ib-schev-match-table th {
  background-color: var(--c-sh-head-bg) !important;
  color: var(--c-sh-text) !important;
  font-weight: bold !important;
  text-align: center !important;
  padding: 1px 4px !important;
  height: var(--h-mr-row) !important;
  font-size: 10pt !important;
  box-sizing: border-box !important;
}

.ib-schev-match-table th a {
  color: var(--c-sh-link) !important;
  text-decoration: none !important;
  font-weight: bold !important;
}

.ib-schev-match-table th a:hover {
  text-decoration: none !important;
}

.ib-schev-match-table td {
  background-color: var(--c-sh-cell-bg) !important;
  padding: 1px 4px !important;
  height: var(--h-mr-row) !important;
  font-size: 10pt !important;
  vertical-align: middle !important;
  text-align: center !important;
  box-sizing: border-box !important;
}

.ib-schev-match-table td.team-name {
  text-align: left !important;
  padding-left: 8px !important;
  color: var(--c-mr-name-color) !important;
  font-weight: normal !important;
}

.ib-schev-match-table td.mr-col-round {
  color: var(--c-mr-score-color) !important;
  font-weight: var(--font-mr-score-weight) !important;
}

.ib-schev-match-table td.score-cell {
  color: var(--c-mr-total-color) !important;
  font-weight: bold !important;
  background-color: var(--c-sh-cell-bg) !important;
}

/* Match Results Columns Width Customization */
.ib-schev-match-table .mr-col-name {
  width: var(--w-mr-name) !important;
  min-width: var(--w-mr-name) !important;
  max-width: var(--w-mr-name) !important;
}

.ib-schev-match-table .mr-col-flag {
  width: var(--w-mr-flag) !important;
  min-width: var(--w-mr-flag) !important;
  max-width: var(--w-mr-flag) !important;
}

.ib-schev-match-table .mr-col-elo {
  width: var(--w-mr-elo) !important;
  min-width: var(--w-mr-elo) !important;
  max-width: var(--w-mr-elo) !important;
}

.ib-schev-match-table .mr-col-round {
  width: var(--w-mr-round) !important;
  min-width: var(--w-mr-round) !important;
  max-width: var(--w-mr-round) !important;
}

.ib-schev-match-table .mr-col-total {
  width: var(--w-mr-total) !important;
  min-width: var(--w-mr-total) !important;
  max-width: var(--w-mr-total) !important;
}

/* ==========================================================================
   Round by Round results
   ========================================================================== */
.ib-schev-rbr-table {
  border-collapse: separate !important;
  border-spacing: 1px !important;
  background-color: var(--c-sh-grid) !important;
  color: var(--c-sh-text) !important;
  font-family: var(--font-sh-main) !important;
  margin: 20px auto !important;
  width: max-content !important;
}

.ib-schev-rbr-table td {
  background-color: var(--c-sh-cell-bg) !important;
  padding: 1px 4px !important;
  font-size: 10pt !important;
  vertical-align: middle !important;
  box-sizing: border-box !important;
}

.ib-schev-rbr-table td.ib-schev-rbr-round-head {
  height: var(--h-rbr-head) !important;
  background-color: var(--c-sh-head-bg) !important;
  text-align: center !important;
  font-weight: bold !important;
}

.ib-schev-rbr-team-row td {
  height: var(--h-rbr-team-row) !important;
  background-color: var(--c-sh-head-bg) !important;
  font-weight: bold !important;
}

.ib-schev-rbr-team-name {
  width: var(--w-rbr-team-name) !important;
  min-width: var(--w-rbr-team-name) !important;
  max-width: var(--w-rbr-team-name) !important;
  white-space: nowrap !important;
}

.ib-schev-rbr-team-left {
  text-align: right !important;
  padding-right: 2mm !important;
}

.ib-schev-rbr-team-right {
  text-align: left !important;
  padding-left: 2mm !important;
}

.ib-schev-rbr-team-elo {
  width: var(--w-rbr-team-elo) !important;
  min-width: var(--w-rbr-team-elo) !important;
  max-width: var(--w-rbr-team-elo) !important;
  text-align: center !important;
}

.ib-schev-rbr-team-flag {
  width: var(--w-rbr-team-flag) !important;
  min-width: var(--w-rbr-team-flag) !important;
  max-width: var(--w-rbr-team-flag) !important;
  text-align: center !important;
}

.ib-schev-rbr-table td.elo {
  width: var(--w-rbr-player-elo) !important;
  min-width: var(--w-rbr-player-elo) !important;
  max-width: var(--w-rbr-player-elo) !important;
  text-align: center !important;
}

.ib-schev-rbr-table td.color-elo {
  width: var(--w-rbr-color-elo) !important;
  min-width: var(--w-rbr-color-elo) !important;
  max-width: var(--w-rbr-color-elo) !important;
  text-align: center !important;
}

.ib-schev-rbr-table td.white-cell {
  background-color: var(--c-sh-white) !important;
}

.ib-schev-rbr-table td.black-cell {
  background-color: var(--c-sh-black) !important;
}

.ib-schev-rbr-table td.flag {
  width: var(--w-rbr-player-flag) !important;
  min-width: var(--w-rbr-player-flag) !important;
  max-width: var(--w-rbr-player-flag) !important;
  text-align: center !important;
}

.ib-schev-rbr-team-score,
.ib-schev-rbr-table td.score {
  width: var(--w-rbr-score) !important;
  min-width: var(--w-rbr-score) !important;
  max-width: var(--w-rbr-score) !important;
  text-align: center !important;
  font-weight: normal !important;
}

.ib-schev-rbr-table td.score a {
  font-weight: normal !important;
}

.ib-schev-rbr-table td.player1,
.ib-schev-rbr-table td.player2 {
  width: var(--w-rbr-player-name) !important;
  min-width: var(--w-rbr-player-name) !important;
  max-width: var(--w-rbr-player-name) !important;
  white-space: nowrap !important;
}

.ib-schev-rbr-table td.player1 {
  text-align: right !important;
  padding-right: 2mm !important;
}

.ib-schev-rbr-table td.player2 {
  text-align: left !important;
  padding-left: 2mm !important;
}

.ib-schev-rbr-table tr td {
  height: var(--h-rbr-game-row) !important;
}

.ib-schev-rbr-summary {
  height: var(--h-rbr-summary) !important;
  text-align: center !important;
  padding-left: 0 !important;
  background-color: var(--c-sh-head-bg) !important;
  font-weight: normal !important;
}

.ib-schev-rbr-summary b {
  font-weight: bold !important;
}

.ib-schev-rbr-table .ib-schev-rbr-round-head {
  height: var(--h-rbr-head) !important;
}

.ib-schev-rbr-table .ib-schev-rbr-team-row td {
  height: var(--h-rbr-team-row) !important;
}

.ib-schev-rbr-table .ib-schev-rbr-summary {
  height: var(--h-rbr-summary) !important;
}

/* ==========================================================================
   Individual standings
   ========================================================================== */
.ib-schev-ind-table {
  border-collapse: separate !important;
  border-spacing: 1px !important;
  background-color: var(--c-sh-grid) !important;
  color: var(--c-sh-text) !important;
  font-family: var(--font-sh-main) !important;
  margin: 20px auto !important;
  width: max-content !important;
}

.ib-schev-ind-table th,
.ib-schev-ind-table td {
  background-color: var(--c-sh-cell-bg) !important;
  padding: 1px 4px !important;
  font-size: 10pt !important;
  vertical-align: middle !important;
  text-align: center !important;
  box-sizing: border-box !important;
}

.ib-schev-ind-table th {
  height: var(--h-ind-head) !important;
  background-color: var(--c-sh-head-bg) !important;
  font-weight: bold !important;
}

.ib-schev-ind-table th.ib-schev-ind-title {
  height: var(--h-ind-title) !important;
  background-color: var(--c-sh-head-bg) !important;
  font-family: var(--font-sh-main) !important;
  font-size: var(--font-ind-title-size) !important;
  font-weight: bold !important;
  text-align: center !important;
}

.ib-schev-ind-table td {
  height: var(--h-ind-row) !important;
}

.ib-schev-ind-table .pos {
  width: var(--w-ind-pos) !important;
  min-width: var(--w-ind-pos) !important;
  max-width: var(--w-ind-pos) !important;
}

.ib-schev-ind-table .name {
  width: var(--w-ind-name) !important;
  min-width: var(--w-ind-name) !important;
  max-width: var(--w-ind-name) !important;
  text-align: left !important;
  white-space: nowrap !important;
}

.ib-schev-ind-table .elo {
  width: var(--w-ind-elo) !important;
  min-width: var(--w-ind-elo) !important;
  max-width: var(--w-ind-elo) !important;
}

.ib-schev-ind-table .flag {
  width: var(--w-ind-flag) !important;
  min-width: var(--w-ind-flag) !important;
  max-width: var(--w-ind-flag) !important;
}

.ib-schev-ind-table .team-code {
  width: var(--w-ind-team) !important;
  min-width: var(--w-ind-team) !important;
  max-width: var(--w-ind-team) !important;
}

.ib-schev-ind-table .tflag {
  width: var(--w-ind-tflag) !important;
  min-width: var(--w-ind-tflag) !important;
  max-width: var(--w-ind-tflag) !important;
}

.ib-schev-ind-table col.tb-col,
.ib-schev-ind-table th.tb-col,
.ib-schev-ind-table .tb-val {
  width: var(--w-ind-tb) !important;
  min-width: var(--w-ind-tb) !important;
  max-width: var(--w-ind-tb) !important;
}

.ib-schev-ind-table .stat-col,
.ib-schev-ind-table .stat-val {
  width: var(--w-ind-stat) !important;
  min-width: var(--w-ind-stat) !important;
  max-width: var(--w-ind-stat) !important;
}

.ib-schev-ind-table td.ib-qual-cell {
  width: var(--w-rr-qual) !important;
  min-width: var(--w-rr-qual) !important;
  max-width: var(--w-rr-qual) !important;
  background-color: var(--c-qual-base) !important;
  background-color: color-mix(in srgb, var(--c-qual-base) var(--ib-qual-weight), var(--c-cell-bg)) !important;
}

.ib-schev-ind-table td.ib-qual-none {
  background-color: var(--c-cell-bg) !important;
}

/* ==========================================================================
   Batch multi-table
   ========================================================================== */
.ib-batch-multi-table {
  border-collapse: separate !important;
  border-spacing: 1px !important;
  background-color: var(--c-sh-grid) !important;
  color: var(--c-sh-text) !important;
  font-family: var(--font-sh-main) !important;
  margin: 20px auto !important;
  width: max-content !important;
}

.ib-batch-multi-table th,
.ib-batch-multi-table td {
  background-color: var(--c-sh-cell-bg) !important;
  padding: 1px 4px !important;
  font-family: var(--font-sh-main) !important;
  font-size: var(--font-bm-row-size) !important;
  vertical-align: middle !important;
  text-align: center !important;
  box-sizing: border-box !important;
}

.ib-batch-multi-table th {
  height: var(--h-bm-head) !important;
  background-color: var(--c-sh-head-bg) !important;
  font-size: var(--font-bm-head-size) !important;
  font-weight: bold !important;
}

.ib-batch-multi-table td {
  height: var(--h-bm-row) !important;
}

.ib-batch-multi-table .bm-pos {
  width: var(--w-bm-pos) !important;
  min-width: var(--w-bm-pos) !important;
  max-width: var(--w-bm-pos) !important;
}

.ib-batch-multi-table .bm-name {
  width: var(--w-bm-name) !important;
  min-width: var(--w-bm-name) !important;
  max-width: var(--w-bm-name) !important;
  text-align: left !important;
  white-space: nowrap !important;
}

.ib-batch-multi-table th.bm-name {
  text-align: center !important;
}

.ib-batch-multi-table .bm-flag {
  width: var(--w-bm-flag) !important;
  min-width: var(--w-bm-flag) !important;
  max-width: var(--w-bm-flag) !important;
}

.ib-batch-multi-table .bm-elo {
  width: var(--w-bm-elo) !important;
  min-width: var(--w-bm-elo) !important;
  max-width: var(--w-bm-elo) !important;
}

.ib-batch-multi-table .bm-stage {
  width: var(--w-bm-stage) !important;
  min-width: var(--w-bm-stage) !important;
  max-width: var(--w-bm-stage) !important;
}

.ib-batch-multi-table .bm-tb {
  width: var(--w-bm-tb) !important;
  min-width: var(--w-bm-tb) !important;
  max-width: var(--w-bm-tb) !important;
}

.ib-batch-multi-table .bm-gms {
  width: var(--w-bm-gms) !important;
  min-width: var(--w-bm-gms) !important;
  max-width: var(--w-bm-gms) !important;
}

.ib-batch-multi-table .bm-stat {
  width: var(--w-bm-stat) !important;
  min-width: var(--w-bm-stat) !important;
  max-width: var(--w-bm-stat) !important;
}

.ib-batch-multi-table .bm-tb-first {
  font-weight: bold !important;
}
