.wrap {
  margin: 0 auto;
  width: 100%;
  max-width: 1000px;
}

.stx-toggle-all {
  font-size: 12px; padding: 2px 0; cursor: pointer;
  background: none; border: none; line-height: 1;
  width: 100%; text-align: center;
}

.wrap table {
  width: 100%;
}

.rnk-brand-table {
  border: none;
}

.rnk-subtitle {
  font-family: 'Lobster', cursive;
  font-size: 22pt;
}

.rnk-table-title-cell {
  border: 0;
  border-radius: 0;
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 14pt;
}

.rnk-rank-col {
  width: 28px;
}

.rnk-tier-col {
  width: 22px;
}

.sort-arrow {
  font-size: 9px;
}

.cc-borderless {
  border: 0;
}

.cc-sortable,
.cc-clickable {
  cursor: pointer;
}

.cc-hidden {
  display: none;
}

.cc-strong {
  font-weight: bold;
}

.cc-text-positive {
  color: #2e7d32;
}

.cc-text-negative {
  color: #c62828;
}

.cc-text-muted {
  color: #888;
}

.cc-text-recovery {
  color: #e67e00;
}

.stx-toggle-all {
  background: none;
  border: none;
  cursor: pointer;
  font-size: 12px;
  line-height: 1;
  opacity: 0.7;
  padding: 0;
}

.stx-toggle-all:hover {
  opacity: 1;
}

.pct-track {
  display: inline-block;
  width: 60px;
  height: 7px;
  background: #ddd;
  border-radius: 4px;
  overflow: hidden;
  vertical-align: middle;
  margin-left: 4px;
}

.pct-fill {
  height: 100%;
  border-radius: 4px;
}

.formula-box {
  background: #fff;
  color: #333;
  overflow: hidden;
  padding: 10px 16px;
  border-radius: 8px 8px 0 0;
}

.formula-box .formula-title {
  color: #000;
  font-family: 'Bebas Neue', sans-serif;
  font-size: 22pt;
  font-weight: 600;
  line-height: 1.1;
  margin-bottom: 4px;
  text-transform: uppercase;
}

.formula-details > summary {
  cursor: pointer;
  list-style: none;
}
.formula-details > summary::-webkit-details-marker { display: none; }
.formula-details > summary::after {
  content: ' ▾';
  font-family: sans-serif;
  font-size: 0.5em;
  opacity: 0.5;
  vertical-align: middle;
}
.formula-details[open] > summary::after { content: ' ▴'; }

.formula-body,
.rnk-tier-legend {
  color: #333;
  font-family: Verdana, sans-serif;
  font-size: 11px;
  line-height: 1.9;
}

.formula-legend {
  color: #888;
  display: block;
  font-family: Verdana, sans-serif;
  font-size: 10px;
  line-height: 1.6;
  margin-top: 4px;
  overflow-wrap: break-word;
}

.rnk-formula-indent {
  padding-left: 12px;
}

.rnk-tier-legend {
  margin-top: 8px;
}

.rnk-title-icon {
  display: inline-block;
  font-size: 24px;
  vertical-align: middle;
}

.rnk-debug {
  background: #fff3cd;
  border: 2px solid #cca300;
  border-radius: 8px;
  color: #333;
  font-family: Verdana, sans-serif;
  font-size: 11px;
  margin-bottom: 8px;
  padding: 10px 16px;
}

.rnk-debug-title {
  font-size: 13px;
}

.rnk-debug-form,
.rnk-debug-row,
.rnk-debug-actions,
.rnk-debug-label {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
}

.rnk-debug-form,
.rnk-debug-row,
.rnk-debug-actions {
  gap: 10px;
}

.rnk-debug-form,
.rnk-debug-form-stack {
  margin-top: 8px;
}

.rnk-debug-row-wide {
  gap: 14px;
}

.rnk-debug-row-separated {
  border-top: 1px solid #e0c060;
  margin-top: 8px;
  padding-top: 7px;
}

.rnk-debug-label {
  cursor: pointer;
  gap: 4px;
}

.rnk-debug-label-wide {
  gap: 5px;
}

.rnk-debug-label-tight {
  gap: 3px;
}

.rnk-debug-actions {
  margin-top: 8px;
}

.rnk-debug-input {
  font-size: 11px;
  width: 52px;
}

.rnk-debug-input-narrow {
  width: 48px;
}

.rnk-debug-button {
  cursor: pointer;
  padding: 3px 12px;
}

.rnk-debug-button-small {
  padding-left: 10px;
  padding-right: 10px;
}

.rnk-debug-active {
  color: #856404;
  font-family: monospace;
}

.rnk-rank-num {
  color: #555;
  font-family: Verdana, sans-serif;
  font-size: 10px;
  text-align: center;
}

.rnk-tier-cell {
  font-size: 10px;
  text-align: center;
}

.rnk-player-link {
  color: inherit;
  text-decoration: underline;
}

.rnk-brand-term {
  color: #42A561;
}

.rnk-cup-term {
  color: #b5006a;
}

.rnk-match-term {
  color: #007a7a;
}

.rnk-plus-term {
  color: #2e7d32;
}

.rnk-exp-term {
  color: #b85c00;
}

.rnk-small,
.rnk-note,
.rnk-bonus-detail {
  font-size: 9px;
}

.rnk-note {
  color: #888;
  font-weight: normal;
}

.rnk-bonus-detail {
  color: #aaa;
}

.expand-row > td {
  overflow: hidden;
}

.rnk-detail-cell {
  padding: 6px 20px 10px;
  text-align: left;
}

.expand-row {
  background: #f5f5dc;
}

.rnk-detail {
  color: #333;
  font-family: Verdana, sans-serif;
  font-size: 10px;
}

.rnk-history-line {
  margin-bottom: 3px;
}

.rnk-history-line-tight {
  margin-bottom: 1px;
}

.rnk-history-components {
  color: #999;
  margin-left: 8px;
}

.rnk-decay-detail {
  color: #888;
  margin-bottom: 3px;
  padding-left: 28px;
}

.rnk-detail-strong {
  color: #333;
}

.rnk-detail-summary {
  border-top: 1px solid #ccc;
  margin-top: 5px;
  padding-top: 4px;
}

.rnk-detail-summary-large {
  margin-top: 6px;
  padding-top: 5px;
}

.rnk-detail-total {
  font-size: 11px;
}

.rnk-breakdown-row {
  margin-bottom: 2px;
}

.rnk-breakdown-label {
  color: #555;
}

.rnk-breakdown-formula {
  color: #aaa;
  margin-left: 6px;
}

.rnk-breakdown-value {
  margin-left: 8px;
}

.rnk-page-time {
  color: #666;
  font-family: monospace;
  font-size: 10px;
  margin-top: 8px;
}

.rnk-heat-gray-0 { background: rgba(200, 200, 200, 0); }
.rnk-heat-gray-10 { background: rgba(200, 200, 200, .1); }
.rnk-heat-gray-20 { background: rgba(200, 200, 200, .2); }
.rnk-heat-gray-30 { background: rgba(200, 200, 200, .3); }
.rnk-heat-gray-40 { background: rgba(200, 200, 200, .4); }
.rnk-heat-gray-50 { background: rgba(200, 200, 200, .5); }
.rnk-heat-gray-60 { background: rgba(200, 200, 200, .6); }
.rnk-heat-gray-70 { background: rgba(200, 200, 200, .7); }
.rnk-heat-gray-80 { background: rgba(200, 200, 200, .8); }
.rnk-heat-gray-90 { background: rgba(200, 200, 200, .9); }

.rnk-heat-blue-0 { background: rgba(100, 180, 240, 0); }
.rnk-heat-blue-10 { background: rgba(100, 180, 240, .1); }
.rnk-heat-blue-20 { background: rgba(100, 180, 240, .2); }
.rnk-heat-blue-30 { background: rgba(100, 180, 240, .3); }
.rnk-heat-blue-40 { background: rgba(100, 180, 240, .4); }
.rnk-heat-blue-50 { background: rgba(100, 180, 240, .5); }
.rnk-heat-blue-60 { background: rgba(100, 180, 240, .6); }
.rnk-heat-blue-70 { background: rgba(100, 180, 240, .7); }
.rnk-heat-blue-80 { background: rgba(100, 180, 240, .8); }
.rnk-heat-blue-90 { background: rgba(100, 180, 240, .9); }

.rnk-heat-gold-0 { background: rgba(255, 200, 0, 0); }
.rnk-heat-gold-10 { background: rgba(255, 200, 0, .1); }
.rnk-heat-gold-20 { background: rgba(255, 200, 0, .2); }
.rnk-heat-gold-30 { background: rgba(255, 200, 0, .3); }
.rnk-heat-gold-40 { background: rgba(255, 200, 0, .4); }
.rnk-heat-gold-50 { background: rgba(255, 200, 0, .5); }
.rnk-heat-gold-60 { background: rgba(255, 200, 0, .6); }
.rnk-heat-gold-70 { background: rgba(255, 200, 0, .7); }
.rnk-heat-gold-80 { background: rgba(255, 200, 0, .8); }
.rnk-heat-gold-90 { background: rgba(255, 200, 0, .9); }

.rnk-heat-pink-0 { background: rgba(255, 105, 180, 0); }
.rnk-heat-pink-10 { background: rgba(255, 105, 180, .1); }
.rnk-heat-pink-20 { background: rgba(255, 105, 180, .2); }
.rnk-heat-pink-30 { background: rgba(255, 105, 180, .3); }
.rnk-heat-pink-40 { background: rgba(255, 105, 180, .4); }
.rnk-heat-pink-50 { background: rgba(255, 105, 180, .5); }
.rnk-heat-pink-60 { background: rgba(255, 105, 180, .6); }
.rnk-heat-pink-70 { background: rgba(255, 105, 180, .7); }
.rnk-heat-pink-80 { background: rgba(255, 105, 180, .8); }
.rnk-heat-pink-90 { background: rgba(255, 105, 180, .9); }

.rnk-heat-green-0 { background: rgba(80, 200, 120, 0); }
.rnk-heat-green-10 { background: rgba(80, 200, 120, .1); }
.rnk-heat-green-20 { background: rgba(80, 200, 120, .2); }
.rnk-heat-green-30 { background: rgba(80, 200, 120, .3); }
.rnk-heat-green-40 { background: rgba(80, 200, 120, .4); }
.rnk-heat-green-50 { background: rgba(80, 200, 120, .5); }
.rnk-heat-green-60 { background: rgba(80, 200, 120, .6); }
.rnk-heat-green-70 { background: rgba(80, 200, 120, .7); }
.rnk-heat-green-80 { background: rgba(80, 200, 120, .8); }
.rnk-heat-green-90 { background: rgba(80, 200, 120, .9); }

.rnk-heat-orange-0 { background: rgba(255, 165, 0, 0); }
.rnk-heat-orange-10 { background: rgba(255, 165, 0, .1); }
.rnk-heat-orange-20 { background: rgba(255, 165, 0, .2); }
.rnk-heat-orange-30 { background: rgba(255, 165, 0, .3); }
.rnk-heat-orange-40 { background: rgba(255, 165, 0, .4); }
.rnk-heat-orange-50 { background: rgba(255, 165, 0, .5); }
.rnk-heat-orange-60 { background: rgba(255, 165, 0, .6); }
.rnk-heat-orange-70 { background: rgba(255, 165, 0, .7); }
.rnk-heat-orange-80 { background: rgba(255, 165, 0, .8); }
.rnk-heat-orange-90 { background: rgba(255, 165, 0, .9); }

@media screen and (max-width: 480px) {
  .formula-box .formula-title {
    font-size: 15pt;
  }
}

@media screen and (max-width: 420px) {
  br {
    display: none;
  }

  .wrap table {
    margin-bottom: 15px !important;
  }

  .rnk-col-hide {
    display: none;
  }

  .stx-toggle-all {
    display: none;
  }

  .pct-track {
    width: 40px;
  }

  #table-elo .elo-rank-num {
    font-size: 9px;
  }

  #table-elo .elo-rank-tier {
    font-size: 13px;
  }
}
