:root{
  color-scheme: dark;
  --bg:#0b0f19;
  --panel:#0f172a;
  --panel2:#111c33;
  --text:#e6eaf2;
  --muted:#a8b3c7;
  --border:rgba(255,255,255,.10);
  --brand:#7dd3fc;
  --accentBlue:#7dd3fc;
  --accentRed:#f87171;
  --good:#34d399;
  --warn:#fbbf24;
}
*{box-sizing:border-box}
body{
  margin:0;
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial;
  background: radial-gradient(1200px 600px at 20% -10%, rgba(125,211,252,.16), transparent 60%), var(--bg);
  background-repeat: no-repeat;
  background-attachment: fixed;
  color:var(--text);
}
.topbar{
  position:sticky; top:0; z-index:10;
  background:
    radial-gradient(1200px 260px at 50% 0%, rgba(255,255,255,.06), transparent 65%),
    linear-gradient(180deg, rgba(15,23,42,.92), rgba(8,11,20,.92));
  backdrop-filter: blur(10px);
  border-bottom:1px solid rgba(125,211,252,.18);
  box-shadow: 0 16px 40px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.06);
  padding:10px 14px;
  display:flex;
  flex-direction:column;
  gap:8px;
  align-items:stretch;
}
.topbar::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-bottom:1px solid transparent;
  border-image: linear-gradient(90deg, rgba(248,113,113,.55), rgba(125,211,252,.55)) 1;
}
.topbar{position:sticky}

.title{
  font-weight:900;
  letter-spacing:.25px;
  font-size: 22px;
  line-height: 1.15;
  background: linear-gradient(90deg, rgba(248,113,113,1), rgba(125,211,252,1));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  text-shadow: 0 0 18px rgba(125,211,252,.18);
}
.subtitle{color:var(--muted); font-size:12px; margin-top:2px}
.headline{color: rgba(230,234,242,.95); font-size:12px; margin-top:6px; font-weight:700}
.headline .sep{opacity:.5; margin: 0 8px}
.headline .pct{color: var(--good)}
.controls{display:flex; gap:12px; align-items:center; flex-wrap:wrap}
.controls--below{
  justify-content:space-between;
  margin-top: 2px;
  padding-top: 8px;
  border-top: 1px solid rgba(255,255,255,.10);
}
.controlsLeft{flex: 0 0 auto; display:flex; gap:10px; align-items:center; flex-wrap:wrap}
.controlsRight{flex: 0 0 auto; display:flex; gap:10px; align-items:center; flex-wrap:wrap; justify-content:flex-end}
.headline--controls{
  margin-top:0;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width: 100%;
}
.subtitle--controls{
  margin-top:0;
  white-space:nowrap;
  font-size:11px;
  align-self:center;
}

@media (max-width: 980px){
  .controls--below{justify-content:flex-start}
  .controlsLeft{min-width: 0; flex: 1 1 100%}
  .controlsRight{justify-content:flex-start}
  .headline--controls{white-space:normal}
}
#search{
  width: 260px;
  max-width: 70vw;
  padding:9px 11px;
  border-radius:10px;
  border:1px solid rgba(125,211,252,.22);
  background: rgba(15,23,42,.7);
  color: var(--text);
}
#search:focus{outline: none; box-shadow: 0 0 0 3px rgba(125,211,252,.18), 0 0 0 1px rgba(248,113,113,.18) inset;}
select{
  padding:9px 11px;
  border-radius:10px;
  border:1px solid rgba(248,113,113,.20);
  background: rgba(15,23,42,.7);
  color: var(--text);
}
select:focus{outline: none; box-shadow: 0 0 0 3px rgba(248,113,113,.16), 0 0 0 1px rgba(125,211,252,.16) inset;}
.btn{
  padding:9px 11px;
  border-radius:10px;
  border:1px solid rgba(125,211,252,.22);
  background: linear-gradient(90deg, rgba(248,113,113,.10), rgba(125,211,252,.12));
  color: rgba(230,234,242,.96);
  font-weight: 850;
  letter-spacing: .15px;
  cursor: pointer;
  text-decoration: none;
  display: inline-block;
}
.btn:hover{border-color: rgba(125,211,252,.40); background: linear-gradient(90deg, rgba(248,113,113,.14), rgba(125,211,252,.16));}
.btn:focus{outline:none; box-shadow: 0 0 0 3px rgba(125,211,252,.18), 0 0 0 1px rgba(248,113,113,.18) inset;}
.btn--download{
  background: linear-gradient(90deg, rgba(52,211,153,.12), rgba(125,211,252,.12));
  border-color: rgba(52,211,153,.25);
}
.btn--download:hover{
  background: linear-gradient(90deg, rgba(52,211,153,.16), rgba(125,211,252,.16));
  border-color: rgba(52,211,153,.40);
}
.pill{
  display:flex;
  gap:8px;
  align-items:center;
  padding:8px 10px;
  border:1px solid rgba(125,211,252,.18);
  background: linear-gradient(90deg, rgba(248,113,113,.06), rgba(125,211,252,.06));
  border-radius:999px;
  user-select:none;
  font-size:13px;
  color:var(--text);
}
.pill:hover{border-color: rgba(125,211,252,.30)}
.container{padding:24px 18px 18px; max-width:1400px; margin:0 auto}
.stats{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap:10px;
  margin-bottom:14px;
}
.stats--header{
  margin: 0;
  display: block;
}

.headerSplit{
  display:grid;
  grid-template-columns: minmax(520px, 1.8fr) minmax(340px, 1fr);
  gap:10px;
  align-items:stretch;
}
.headerSplitLeft{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.headerSplitRight{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  grid-auto-rows: min-content;
  gap:10px;
  align-content:start;
}
.headerSplitRight .statOfficial{
  grid-column: 1 / -1;
}

@media (max-width: 980px){
  .headerSplit{grid-template-columns: 1fr;}
  .headerSplitRight{grid-template-columns: 1fr;}
}
.stat{
  border:1px solid var(--border);
  background: linear-gradient(180deg, rgba(15,23,42,.72), rgba(15,23,42,.45));
  border-radius:14px;
  padding:12px;
}
.statFeaturedOverall{
  border-color: rgba(167,139,250,.30);
  background:
    radial-gradient(900px 260px at 20% 0%, rgba(167,139,250,.22), transparent 65%),
    linear-gradient(180deg, rgba(15,23,42,.72), rgba(15,23,42,.45));
  padding: 10px;
}
.statFeaturedOverall .k{font-size: 11px}
.statFeaturedOverall .v{font-size: 18px; margin-top: 4px}
.statFeaturedBlock{
  border-color: rgba(52,211,153,.28);
  background:
    radial-gradient(900px 260px at 20% 0%, rgba(52,211,153,.18), transparent 65%),
    linear-gradient(180deg, rgba(15,23,42,.72), rgba(15,23,42,.45));
  padding: 10px;
}
.statFeaturedBlock .k{font-size: 11px}
.statFeaturedBlock .v{font-size: 18px; margin-top: 4px}
.statFeaturedDay{
  border-color: rgba(244,114,182,.28);
  background:
    radial-gradient(900px 260px at 20% 0%, rgba(244,114,182,.18), transparent 65%),
    linear-gradient(180deg, rgba(15,23,42,.72), rgba(15,23,42,.45));
  padding: 10px;
}
.statFeaturedDay .k{font-size: 11px}
.statFeaturedDay .v{font-size: 18px; margin-top: 4px}
.eventProgress{
  height:100%;
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
}
.eventProgressTop{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap: 14px;
  flex-wrap:wrap;
}
.eventBrandInline{
  display:flex;
  gap: 12px;
  align-items:flex-start;
}
.eventLogo{
  width: 64px;
  height: 64px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(15,23,42,.65);
  object-fit: cover;
  flex: 0 0 auto;
}
.eventBrandInline .subtitle{margin-top:4px}
.eventBrandInline .headline{margin-top:6px}
.eventTotalRow{
  margin-top: 8px;
  display: flex;
  align-items: baseline;
  gap: 10px;
  flex-wrap: wrap;
}
.eventTotalRow .k{
  font-size: 13px;
  color: var(--muted);
  font-weight: 600;
}
.eventSuperTitle{
  font-size: 18px;
  font-weight: 950;
  letter-spacing: .25px;
  line-height: 1.15;
  margin-bottom: 6px;
  background: linear-gradient(90deg, rgba(248,113,113,1), rgba(125,211,252,1));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  text-shadow: 0 0 18px rgba(125,211,252,.18);
}
.eventTotal{
  font-size: 28px;
  font-weight: 950;
  letter-spacing: .2px;
  margin-top: 6px;
}
.eventProgressNote{display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end}
.chip{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:5px 9px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  font-size:11px;
  color: rgba(230,234,242,.95);
  background: rgba(15,23,42,.55);
}
.chip b{color: rgba(230,234,242,.98)}
.chip.red{border-color: rgba(248,113,113,.35); background: rgba(248,113,113,.08)}
.chip.blue{border-color: rgba(125,211,252,.35); background: rgba(125,211,252,.08)}
.chip.gray{border-color: rgba(255,255,255,.16); background: rgba(255,255,255,.05)}

.eventBar{
  margin-top: 12px;
  height: 16px;
  border-radius: 999px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
  display:flex;
}
.eventBar .seg{height:100%}
.eventBar .seg-red{background: linear-gradient(90deg, rgba(248,113,113,1), rgba(248,113,113,.75))}
.eventBar .seg-blue{background: linear-gradient(90deg, rgba(125,211,252,1), rgba(125,211,252,.75))}
.eventBar .seg-gray{background: linear-gradient(90deg, rgba(167,139,250,1), rgba(167,139,250,.75))}

.eventLegend{
  margin-top: 12px;
  display:flex;
  gap: 18px;
  flex-wrap:wrap;
  font-size: 14px;
  color: rgba(230,234,242,.95);
  font-weight: 600;
}
.eventLegend b{
  color: rgba(230,234,242,1);
  font-weight: 900;
  font-size: 15px;
}
.eventLegend .dot{
  display:inline-block;
  width:10px;
  height:10px;
  border-radius:999px;
  margin-right:6px;
  border:1px solid rgba(255,255,255,.18);
  vertical-align: -1px;
}
.eventLegend .dot.red{background: rgba(248,113,113,.95); border-color: rgba(248,113,113,.45)}
.eventLegend .dot.blue{background: rgba(125,211,252,.95); border-color: rgba(125,211,252,.45)}
.eventLegend .dot.gray{background: rgba(167,139,250,.95); border-color: rgba(167,139,250,.45)}

.eventLinks{
  margin-top: 12px;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.eventLink{
  display: inline-flex;
  align-items: center;
  padding: 8px 14px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
  border: 1px solid rgba(255,255,255,.14);
  transition: all 0.2s ease;
}
.eventLink--twitch{
  background: linear-gradient(135deg, rgba(145,70,255,.18), rgba(145,70,255,.08));
  color: rgba(191,148,255,.95);
  border-color: rgba(145,70,255,.35);
}
.eventLink--twitch:hover{
  background: linear-gradient(135deg, rgba(145,70,255,.28), rgba(145,70,255,.12));
  border-color: rgba(145,70,255,.55);
}
.eventLink--twitter{
  background: linear-gradient(135deg, rgba(29,155,240,.18), rgba(29,155,240,.08));
  color: rgba(96,180,238,.95);
  border-color: rgba(29,155,240,.35);
}
.eventLink--twitter:hover{
  background: linear-gradient(135deg, rgba(29,155,240,.28), rgba(29,155,240,.12));
  border-color: rgba(29,155,240,.55);
}
.eventLink--tiltify{
  background: linear-gradient(135deg, rgba(248,113,113,.18), rgba(248,113,113,.08));
  color: rgba(252,165,165,.95);
  border-color: rgba(248,113,113,.35);
}
.eventLink--tiltify:hover{
  background: linear-gradient(135deg, rgba(248,113,113,.28), rgba(248,113,113,.12));
  border-color: rgba(248,113,113,.55);
}
.eventLink--donate{
  background: linear-gradient(135deg, rgba(52,211,153,.18), rgba(52,211,153,.08));
  color: rgba(110,231,183,.95);
  border-color: rgba(52,211,153,.35);
}
.eventLink--donate:hover{
  background: linear-gradient(135deg, rgba(52,211,153,.28), rgba(52,211,153,.12));
  border-color: rgba(52,211,153,.55);
}

.statOfficial{border-color: rgba(251,191,36,.44);
  background:
    radial-gradient(900px 260px at 18% 0%, rgba(251,191,36,.26), transparent 70%),
    radial-gradient(900px 260px at 85% 0%, rgba(253,230,138,.16), transparent 72%),
    linear-gradient(180deg, rgba(15,23,42,.72), rgba(15,23,42,.45));
}
.statOfficial .v{font-size:28px}
.inlineLink{
  color: rgba(230,234,242,.95);
  text-decoration:none;
  border-bottom: 1px solid rgba(125,211,252,.55);
}
.inlineLink:hover{border-bottom-color: rgba(248,113,113,.65)}
.stat .k{color:var(--muted); font-size:12px}
.stat .v{font-size:22px; font-weight:800; margin-top:6px}
.notice{
  border:1px solid rgba(251,191,36,.35);
  background: rgba(251,191,36,.08);
  color: var(--text);
  padding:12px 14px;
  border-radius:12px;
  margin-bottom:14px;
}
.grid{
  display:block;
}
.card{
  border:1px solid var(--border);
  background: linear-gradient(180deg, rgba(17,28,51,.8), rgba(15,23,42,.55));
  border-radius:16px;
  padding:16px;
}
.dayGrid .card:nth-child(odd){
  background: linear-gradient(180deg, rgba(17,28,51,.88), rgba(15,23,42,.60));
}
.dayGrid .card:nth-child(even){
  background:
    radial-gradient(900px 300px at 0% 0%, rgba(var(--dayAccentRgb, 125,211,252), .16), transparent 60%),
    linear-gradient(180deg, rgba(10,14,25,.70), rgba(15,23,42,.52));
  box-shadow: inset 0 0 0 1px rgba(var(--dayAccentRgb, 125,211,252), .10);
}
.grid > .card:nth-child(even){
  background: linear-gradient(180deg, rgba(10,14,25,.70), rgba(15,23,42,.52));
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.06);
}
.dayGrid .card{
  border-color: rgba(var(--dayAccentRgb, 125,211,252), .22);
}
.daySection{
  margin-bottom: 18px;
  border: 1px solid rgba(var(--dayAccentRgb, 125,211,252), .25);
  border-radius: 18px;
  padding: 14px 14px 16px;
  background:
    radial-gradient(900px 260px at 10% 0%, rgba(var(--dayAccentRgb, 125,211,252), .22), transparent 70%),
    linear-gradient(180deg, rgba(15,23,42,.55), rgba(15,23,42,.25));
}
.dayHeader{
  margin: 4px 4px 12px;
  display:flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  color: rgba(230,234,242,.98);
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(var(--dayAccentRgb, 125,211,252), .25);
  background: linear-gradient(90deg, rgba(var(--dayAccentRgb, 125,211,252), .08), transparent 55%);
  border-radius: 14px;
  padding: 10px 12px;
}
.dayTitle{
  font-weight: 950;
  letter-spacing: .3px;
  font-size: 18px;
}
.dayMeta{
  display:flex;
  align-items: baseline;
  gap: 10px;
  flex-wrap: wrap;
  font-size: 13px;
  color: var(--muted);
}
.dayMeta b{color: rgba(230,234,242,.98)}
.dayMeta .sep{opacity:.55}
.dayGrid{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
  gap:14px;
}
.cardTop{display:flex; align-items:center; justify-content:space-between; gap:10px}
.who{display:flex; gap:10px; align-items:center; min-width:0}
.avatarWrap{
  width: 42px;
  height: 42px;
  border-radius: 999px;
  overflow: hidden;
  border: 1px solid var(--border);
  background: rgba(15,23,42,.75);
  position: relative;
  flex: 0 0 auto;
}
.avatar{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.avatarFallback{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight: 900;
  color: rgba(230,234,242,.9);
  letter-spacing:.5px;
  text-transform: uppercase;
}
.avatarWrap.loaded .avatarFallback{opacity:0}
.avatarWrap.noimg .avatar{display:none}
.name{font-weight:800; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; max-width: 520px}
.badge{
  font-size:11px;
  padding:4px 8px;
  border-radius:999px;
  border:1px solid rgba(125,211,252,.35);
  color: var(--brand);
  background: rgba(125,211,252,.08);
}
.badge.featured{border-color: rgba(52,211,153,.35); color: var(--good); background: rgba(52,211,153,.08)}
.name{font-weight:800}
.muted{color:var(--muted)}
.overallRaised{
  margin-top:10px;
  text-align:right;
}
.overallRaised .money{margin-top:6px}
.money{font-weight:900; font-size:26px; line-height:1.1; margin-top:10px}
.row{display:flex; justify-content:space-between; gap:10px; margin-top:6px; font-size:13px}

.grid > .card .row{
  display:grid;
  grid-template-columns: auto auto;
  justify-content:end;
  align-items: baseline;
  column-gap: 26px;
  padding-right:12px;
}
.grid > .card .row > .muted{
  text-align:right;
}
.grid > .card .row > :last-child{ text-align:right; }
.progress{margin-top:10px}
.progressTop{display:flex; justify-content:space-between; gap:14px; font-size:13px; color: var(--muted)}
.progressTop > :last-child{ text-align:right; }
.goalAmount{color:rgba(230,234,242,.98); font-size:15px; font-weight:900}
.progressPct{font-size:14px; color: rgba(230,234,242,.92); font-weight:800}
.bar{height:10px; border-radius:999px; background: rgba(255,255,255,.08); border:1px solid var(--border); overflow:hidden; margin-top:6px}
.bar > div{height:100%; background: linear-gradient(90deg, rgba(52,211,153,.95), rgba(125,211,252,.85)); width:0%}
.daySection .bar{
  background: rgba(var(--dayAccentRgb, 125,211,252), .08);
  border-color: rgba(var(--dayAccentRgb, 125,211,252), .22);
}
.daySection .bar > div{
  background: linear-gradient(90deg, rgba(var(--dayAccentRgb, 125,211,252), .95), rgba(var(--dayAccentRgb, 125,211,252), .55));
}
.miniLinks{
  display:flex;
  gap:8px;
  margin-top:12px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.miniLinks a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(var(--dayAccentRgb, 125,211,252), .28);
  background: linear-gradient(90deg, rgba(248,113,113,.06), rgba(var(--dayAccentRgb, 125,211,252), .08));
  color: rgba(230,234,242,.95);
  text-decoration:none;
  font-size:12px;
  font-weight:750;
  letter-spacing:.15px;
}
.miniLinks a:hover{
  border-color: rgba(var(--dayAccentRgb, 125,211,252), .42);
  background: linear-gradient(90deg, rgba(248,113,113,.10), rgba(var(--dayAccentRgb, 125,211,252), .14));
}
.miniLinks a:focus{
  outline:none;
  box-shadow: 0 0 0 3px rgba(var(--dayAccentRgb, 125,211,252), .18);
}
.links{display:flex; gap:10px; margin-top:10px; flex-wrap:wrap; justify-content:flex-end}
.links a{color: rgba(230,234,242,.95); text-decoration:none; border-bottom:1px solid rgba(var(--dayAccentRgb, 125,211,252), .35)}
.links a:hover{border-bottom-color: rgba(var(--dayAccentRgb, 125,211,252), .65)}
.footer{margin-top:16px; color:var(--muted); font-size:12px}
