/* Account: consistent spacing between tab rows */
.acctCard .subtabs { margin: 0 0 12px 0; }
.acctPurchProductSelectRow {
  margin: 0 0 12px 0;
}
.acctPurchProductSelect {
  width: auto !important;
  min-width: 0;
  max-width: max-content;
}
.acctCard .acctPurchGeoTabs,
.acctCard .acctPurchMonths,
.acctCard .acctPurchTypeTabs {
  display: flex; /* force each tabs block onto its own row */
  max-width: 100%;
  width: fit-content;
}
#dashboardMonths {
  display: flex;
  max-width: 100%;
  width: fit-content;
  margin-bottom: 10px;
}
#dashboardSectionTabs {
  display: flex;
  max-width: 100%;
  width: fit-content;
  margin-bottom: 12px;
}
#dashboardViewTabs {
  display: flex;
  max-width: 100%;
  width: fit-content;
  margin-bottom: 16px;
}
.acctCard #acctAccountProductTabs,
.acctCard #acctWorkTabs {
  display: flex; /* keep product row and work row separate */
  max-width: 100%;
  width: fit-content;
}
.acctCard .acctPurchGeoTabs .subtab.geoPending {
  color: rgba(232,236,255,.56);
  cursor: not-allowed;
}
.acctCard .acctPurchGeoTabs .subtab.geoPending:hover {
  cursor: not-allowed;
}
.acctMarketsList {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}
.acctMarketGeo {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 24px;
  padding: 4px 9px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.14);
  font-size: 12px;
  font-weight: 850;
  line-height: 1;
}
.acctMarketGeo--approved {
  border-color: var(--okBorder);
  background: var(--okBg);
  color: var(--okText);
}
.acctMarketGeo--pending {
  border-color: var(--warnBorder);
  background: var(--warnBg);
  color: var(--warnText);
}
.acctMarketGeo--cancelled {
  border-color: var(--badBorder);
  background: var(--badBg);
  color: var(--badText);
}
.acctAdminPanel {
  margin-bottom: 14px;
  padding: 12px 14px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 14px;
  background: rgba(255,255,255,.03);
}
.acctAdminPanelTitle {
  margin-bottom: 10px;
  color: rgba(232,236,255,.92);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .02em;
  text-transform: uppercase;
}
.acctAccessRow {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
.acctAccessRow + .acctAccessRow {
  margin-top: 10px;
}
.acctAccessLabel {
  display: flex;
  align-items: center;
  min-width: 58px;
  min-height: 34px;
  font-weight: 800;
}
.acctAccessRow form {
  margin: 0;
  flex: 1 1 auto;
}
.acctModeSwitchForm {
  margin: 0;
}
.acctModeSwitch {
  margin: 0;
}
.acctWebmasterProductChecks {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  min-height: 34px;
  align-items: center;
  flex: 1 1 280px;
}
.acctWebmasterProductCheck {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 10px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  user-select: none;
  white-space: nowrap;
}
.acctWebmasterProductCheck input {
  margin: 0;
}
.acctPurchTitle { font-size: 16px; font-weight: 800; margin: 0 0 10px 0; }
.acctReqToggleGlyph { display:inline-flex; transition: transform .15s ease; }
.acctReqToggleBtn.is-open .acctReqToggleGlyph { transform: rotate(180deg); }
.acctPurchTableWrap {
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 14px;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  background: rgba(255,255,255,.025);
}
.acctPurchTable {
  width: 100%;
  min-width: 760px;
  table-layout: auto;
  border-collapse: separate;
  border-spacing: 0;
}
.acctPurchColId { width: 96px; }
.acctPurchColDate { width: 132px; }
.acctPurchColCountry { width: 104px; }
.acctPurchColListing { width: 112px; }
.acctPurchColPartner { width: auto; }
.acctPurchColCasino { width: auto; }
.acctPurchColPrice { width: 120px; }
.acctPurchColStatus { width: 120px; }
.acctPurchTable th {
  padding: 12px 14px;
  font-size: 11px;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: rgba(232,236,255,.58);
  border-bottom: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.035);
}
.acctPurchTable td {
  padding: 13px 14px;
  border-bottom: 1px solid rgba(255,255,255,.06);
  vertical-align: middle;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.acctPurchTable tbody tr:last-child td {
  border-bottom: 0;
}
.acctPurchTable .num {
  text-align: right;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.acctPurchTable:not(.acctPurchTable--withPartner) th:nth-child(5),
.acctPurchTable:not(.acctPurchTable--withPartner) td:nth-child(5),
.acctPurchTable--withPartner th:nth-child(5),
.acctPurchTable--withPartner td:nth-child(5),
.acctPurchTable--withPartner th:nth-child(6),
.acctPurchTable--withPartner td:nth-child(6) {
  min-width: 180px;
  overflow: visible;
  text-overflow: clip;
}
.acctPurchReqSummary.isExpandable {
  cursor: pointer;
}
.acctPurchReqSummary.isExpandable:hover td,
.acctPurchReqSummary.isExpandable:focus-visible td,
.acctPurchReqSummary.isExpandable.is-open td {
  background: rgba(255,255,255,.055);
}
.acctPurchReqSummary.isExpandable:focus-visible {
  outline: 2px solid var(--focus);
  outline-offset: -2px;
}
.acctPurchReqDetailsRow > td {
  padding: 10px 14px;
  background: rgba(255,255,255,.035);
}
.acctPurchReqDetailsRow td:first-child,
.acctPurchReqDetailsRow td:nth-child(2),
.acctPurchReqDetailsRow td:last-child {
  background: rgba(255,255,255,.02);
}
.dashboardTable {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.dashboardCsvActions {
  display: flex;
  justify-content: flex-end;
  margin-top: 8px;
}
.dashboardRowCard {
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.03);
  padding: 14px;
}
.dashboardRow {
  display: grid;
  grid-template-columns: minmax(150px, 190px) minmax(0, 1fr) minmax(88px, 120px);
  gap: 14px;
  align-items: center;
  min-width: 0;
  width: 100%;
}
.dashboardPerson {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}
.acctDashboardAvatarLink {
  display: inline-flex;
  text-decoration: none;
  color: inherit;
}
.dashboardPersonMeta {
  min-width: 0;
  flex: 1 1 auto;
}
.acctDashboardName {
  font-weight: 800;
  line-height: 1.25;
  white-space: normal;
  overflow-wrap: anywhere;
}
.dashboardBarWrap {
  min-width: 0;
  width: 100%;
  user-select: none;
}
.dashboardBar {
  display: flex;
  width: 100%;
  height: 18px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.08);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.03);
  cursor: pointer;
  user-select: none;
}
.dashboardBarSeg {
  display: block;
  height: 100%;
  min-width: 0;
  padding: 0;
  border: 0;
  appearance: none;
  cursor: pointer;
  transition: filter .15s ease, opacity .15s ease;
}
.dashboardBarSeg.isActive {
  filter: brightness(1.14);
}
.dashboardBarSeg:hover {
  filter: brightness(1.08);
}
.dashboardBarSeg:focus-visible {
  outline: 2px solid rgba(255,255,255,.72);
  outline-offset: -2px;
}
.dashboardBarSeg[style*="width:0.0000%"] {
  pointer-events: none;
}
.dashboardBarSeg--submitted {
  background: var(--badSolid);
}
.dashboardBarSeg--approved {
  background: var(--okSolid);
}
.dashboardBarSeg--pending {
  background: rgb(245, 198, 28);
}
.dashboardBarSeg--bonus {
  background: rgb(245, 198, 28);
}
.dashboardBarSeg--listing {
  background: rgb(124, 77, 255);
}
.dashboardBarSeg--share {
  background: #ff69b4;
}
.dashboardBarLegend {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 8px;
  user-select: none;
}
.dashboardLegendItem {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  font-size: 12px;
  color: rgba(232,236,255,.76);
  white-space: nowrap;
  user-select: none;
}
.dashboardLegendSwatch {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  flex: 0 0 auto;
}
.dashboardLegendSwatch--submitted {
  background: var(--badSolid);
}
.dashboardLegendSwatch--approved {
  background: var(--okSolid);
}
.dashboardLegendSwatch--pending {
  background: rgb(245, 198, 28);
}
.dashboardLegendSwatch--bonus {
  background: rgb(245, 198, 28);
}
.dashboardLegendSwatch--listing {
  background: rgb(124, 77, 255);
}
.dashboardLegendSwatch--share {
  background: #ff69b4;
}
.dashboardTotals {
  justify-self: end;
  text-align: right;
  white-space: nowrap;
  min-width: 0;
}
.dashboardTotalsLabel {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .02em;
  text-transform: uppercase;
  color: rgba(232,236,255,.62);
}
.dashboardTotalsValue {
  margin-top: 4px;
  font-weight: 800;
  color: rgba(232,236,255,.98);
}
.dashboardDrilldown {
  margin-top: 12px;
}
.dashboardDrilldownInner {
  border-top: 1px solid rgba(255,255,255,.08);
  padding-top: 12px;
}
.dashboardDrilldownTitle {
  margin-bottom: 10px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .03em;
  text-transform: uppercase;
  color: rgba(232,236,255,.72);
}
.dashboardTaskList {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.dashboardTaskItem {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
  padding: 8px 0;
}
.dashboardTaskItem + .dashboardTaskItem {
  border-top: 1px solid rgba(255,255,255,.08);
}
.dashboardTaskPerson {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}
.dashboardTaskMeta {
  min-width: 0;
}
.dashboardTaskRequest {
  font-weight: 800;
  line-height: 1.2;
}
.dashboardTaskPrice {
  flex: 0 0 auto;
  white-space: nowrap;
  font-weight: 800;
  color: rgba(232,236,255,.98);
}
.dashboardPartnersPane {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.dashboardPartnersIntro {
  margin-top: -2px;
}
.dashboardPartnersGrid {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.dashboardPartnerGroupCard {
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.03);
  padding: 14px;
}
.dashboardPartnerChartCard {
  position: relative;
  z-index: 0;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.10);
  background: linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.035));
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.03);
  padding: 14px;
}
.dashboardPartnerChartCard:hover,
.dashboardPartnerChartCard:focus-within {
  z-index: 30;
}
.dashboardPartnerChartCard--group {
  margin-top: 12px;
  padding-top: 12px;
  background: rgba(255,255,255,.025);
}
.dashboardPartnerChartCard--group .dashboardPartnerChartHeader {
  display: none;
}
.dashboardPartnerChartCard--groupInline,
.dashboardPartnerChartCard--user {
  padding: 10px;
  background: rgba(255,255,255,.03);
}
.dashboardPartnerChartCard--groupInline .dashboardPartnerChartHeader,
.dashboardPartnerChartCard--user .dashboardPartnerChartHeader {
  display: none;
}
.dashboardPartnerChartCard--groupInline .dashboardComboLegend,
.dashboardPartnerChartCard--user .dashboardComboLegend {
  display: none;
}
.dashboardPartnerChartCard--groupInline .dashboardComboPlot,
.dashboardPartnerChartCard--user .dashboardComboPlot {
  height: 104px;
}
.dashboardPartnerChartCard--groupInline .dashboardComboBar,
.dashboardPartnerChartCard--user .dashboardComboBar {
  width: min(30px, 70%);
}
.dashboardPartnerChartCard--groupInline .dashboardComboXAxis,
.dashboardPartnerChartCard--user .dashboardComboXAxis {
  margin-top: 6px;
  font-size: 10px;
}
.dashboardPartnerChartHeader {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 10px;
}
.dashboardPartnerGroupHeader {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
}
.dashboardPartnerGroupToggle {
  width: 100%;
  margin: 0;
  padding: 0;
  appearance: none;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.dashboardPartnerGroupToggle:hover .dashboardPartnerGroupTitle,
.dashboardPartnerGroupToggle.is-open .dashboardPartnerGroupTitle {
  color: rgba(255,255,255,.98);
}
.dashboardPartnerGroupToggle:focus-visible {
  outline: 2px solid var(--focus);
  outline-offset: 6px;
  border-radius: 10px;
}
.dashboardPartnerGroupRow {
  display: grid;
  grid-template-columns: minmax(220px, 280px) minmax(96px, 124px) minmax(360px, 1fr);
  gap: 14px;
  align-items: center;
}
.dashboardPartnerGroupTitle {
  font-weight: 850;
  color: rgba(232,236,255,.96);
}
.dashboardPartnerGroupTotals {
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  gap: 18px;
  text-align: right;
  white-space: nowrap;
}
.dashboardPartnerGroupTotals span {
  display: block;
  margin-bottom: 4px;
  font-size: 11px;
  font-weight: 750;
  letter-spacing: .02em;
  text-transform: uppercase;
  color: rgba(232,236,255,.58);
}
.dashboardPartnerGroupTotals strong {
  display: block;
  color: rgba(232,236,255,.98);
}
.dashboardComboLegend {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
  margin-bottom: 10px;
  font-size: 12px;
  color: rgba(232,236,255,.72);
}
.dashboardComboLegend span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}
.dashboardComboLegendBar {
  width: 12px;
  height: 12px;
  border-radius: 3px;
  background: var(--focus);
}
.dashboardComboLegendLine {
  width: 18px;
  height: 3px;
  border-radius: 999px;
  background: var(--okSolid);
}
.dashboardComboPlot {
  position: relative;
  z-index: 0;
  height: 230px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.08);
  background:
    linear-gradient(to top, rgba(255,255,255,.055) 1px, transparent 1px) 0 0 / 100% 25%,
    rgba(255,255,255,.025);
  overflow: visible;
}
.dashboardComboBars {
  position: absolute;
  inset: 16px 12px 18px 12px;
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(28px, 1fr);
  align-items: end;
  gap: 12px;
  z-index: 1;
}
.dashboardComboCol {
  position: relative;
  display: flex;
  align-items: end;
  justify-content: center;
  height: 100%;
  min-width: 0;
}
.dashboardComboCol:hover {
  z-index: 80;
}
.dashboardComboBar {
  width: min(46px, 72%);
  min-height: 0;
  border-radius: 7px 7px 0 0;
  background: linear-gradient(180deg, var(--focus), rgba(124,77,255,.72));
  box-shadow: 0 0 0 1px var(--focusBorderStrong), 0 10px 24px rgba(0,0,0,.22);
}
.dashboardComboLineSvg {
  position: absolute;
  inset: 16px 12px 18px 12px;
  width: calc(100% - 24px);
  height: calc(100% - 34px);
  z-index: 2;
  overflow: visible;
  pointer-events: none;
}
.dashboardComboLineSvg polyline {
  fill: none;
  stroke: var(--okSolid);
  stroke-width: 2.2;
  vector-effect: non-scaling-stroke;
  stroke-linecap: round;
  stroke-linejoin: round;
  filter: drop-shadow(0 2px 6px rgba(94,201,118,.30));
}
.dashboardComboPoint {
  position: absolute;
  z-index: 4;
  width: 12px;
  height: 12px;
  border-radius: 999px;
  background: var(--okSolid);
  border: 2px solid rgba(232,236,255,.95);
  transform: translate(-50%, -50%);
  box-shadow: 0 0 0 4px rgba(94,201,118,.18);
  cursor: help;
}
.dashboardComboPoint:hover {
  z-index: 90;
}
.dashboardComboPoint::before {
  content: "";
  position: absolute;
  inset: -12px;
  border-radius: 999px;
}
.dashboardComboXAxis {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(28px, 1fr);
  gap: 12px;
  margin: 8px 12px 0 12px;
  font-size: 11px;
  font-weight: 750;
  color: rgba(232,236,255,.58);
  text-align: center;
}
.dashboardComboXAxis span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dashboardPartnerUsers {
  display: flex;
  flex-direction: column;
  margin-top: 12px;
  border-top: 1px solid rgba(255,255,255,.08);
}
.dashboardPartnerUserRow {
  display: grid;
  grid-template-columns: minmax(220px, 280px) minmax(96px, 124px) minmax(360px, 1fr);
  gap: 14px;
  align-items: center;
  padding: 11px 0;
}
.dashboardPartnerUserRow + .dashboardPartnerUserRow {
  border-top: 1px solid rgba(255,255,255,.08);
}
.dashboardPartnerUserStats {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: flex-end;
  gap: 4px;
  grid-column: 2;
  grid-row: 1;
  font-size: 12px;
  color: rgba(232,236,255,.72);
  white-space: nowrap;
  text-align: right;
}
.dashboardPartnerUserStats strong {
  min-width: 0;
  text-align: right;
  color: rgba(232,236,255,.98);
  font-size: 14px;
}
.dashboardPartnerGroupStats strong {
  min-width: 0;
}
.dashboardPartnerUserChart {
  grid-column: 3;
  grid-row: 1;
  min-width: 0;
}
.dashboardPartnerGroupChart {
  width: 100%;
}
@media (max-width: 720px) {
  .dashboardPartnerGroupHeader,
  .dashboardPartnerChartHeader,
  .dashboardPartnerGroupRow,
  .dashboardPartnerUserRow {
    display: flex;
    flex-direction: column;
    align-items: stretch;
  }
  .dashboardComboPlot {
    height: 190px;
  }
  .dashboardComboBars,
  .dashboardComboXAxis {
    gap: 8px;
  }
  .dashboardPartnerGroupTotals,
  .dashboardPartnerUserStats {
    justify-content: flex-start;
    text-align: left;
    flex-wrap: wrap;
  }
  .dashboardPartnerUserStats strong {
    min-width: 0;
    text-align: left;
  }
}
.dot { width: 8px; height: 8px; border-radius: 999px; display:inline-block; }
.dot.ok { background: var(--okSolid); }
.dot.bad { background: var(--badSolid); }
.avatar { width: 96px; height: 96px; border-radius: 18px; object-fit: cover; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.10); }
.avatar.sm { width: 72px; height: 72px; border-radius: 16px; }
.avatar.xs { width: 44px; height: 44px; border-radius: 12px; }
