/* The Weekly Muck League's Monday reveal (assets/league-reveal.js). Site tokens, gold the only accent. */
.lr-overlay{position:fixed;inset:0;z-index:2000;display:grid;place-items:center;padding:16px;background:#000000c7;opacity:0;transition:opacity .3s ease;font-family:var(--muck-font,Inter,system-ui,sans-serif)}
.lr-overlay.is-on{opacity:1}
.lr-card{position:relative;width:min(560px,100%);max-height:calc(100vh - 32px);overflow:auto;padding:28px 28px 24px;border:1px solid var(--muck-line-strong,#3a3a3a);border-radius:16px;background:var(--muck-surface-1,#141414);color:var(--muck-text,#f2f2f2);text-align:center;box-shadow:0 30px 80px #000c;transform:scale(.96);transition:transform .35s cubic-bezier(.2,.9,.3,1.2)}
.lr-overlay.is-on .lr-card{transform:none}
.lr-skip{position:absolute;top:14px;right:14px;height:30px;padding:0 12px;border:1px solid var(--muck-line-strong,#3a3a3a);border-radius:7px;background:var(--muck-surface-2,#1b1b1b);color:var(--muck-text-2,#b4b4b4);font:600 12px var(--muck-font,Inter,system-ui,sans-serif);cursor:pointer}
.lr-skip:hover{color:var(--muck-gold,#ffd34f);border-color:var(--muck-gold-muted,#d8bd84)}
.lr-skip:focus-visible,.lr-btn:focus-visible{outline:2px solid var(--muck-gold,#ffd34f);outline-offset:3px}
.lr-beat{opacity:0;transform:translateY(10px);transition:opacity .4s ease,transform .4s ease}
.lr-beat.is-on{opacity:1;transform:none}
.lr-head h2{margin:6px 0 6px;font-size:26px;font-weight:750;letter-spacing:-.025em}
.lr-head p{margin:0;font-size:13px;color:var(--muck-text-3,#7d7d7d)}

/* Podium: the League page's (assets/leaderboard-podium.css .lbx-pod.lg-mini, built in assets/league-reveal.js); 2nd, 1st, 3rd
   rise in turn. Rounded all round here (on the page it joins the table below). */
:is(#lb-podium,.lbx-pod).lbx-podium.lg-mini.lr-pod{margin:20px 0 14px;border-radius:12px}
.lr-rise{opacity:0;transform:translateY(24px);transition:opacity .4s ease,transform .45s cubic-bezier(.2,.9,.3,1.25)}
.lr-rise.is-on{opacity:1;transform:none}
/* The smallest phones (339 px): the podium runs nearly to the card's edges and the stand labels pack tighter */
@media(max-width:380px){
  :is(#lb-podium,.lbx-pod).lbx-podium.lg-mini.lr-pod{margin-left:-8px;margin-right:-8px;padding-left:4px;padding-right:4px}
  :is(#lb-podium,.lbx-pod).lg-mini.lr-pod .lbx-stage{gap:3px}
  :is(#lb-podium,.lbx-pod).lg-mini.lr-pod .lbx-place{letter-spacing:.04em}
  :is(#lb-podium,.lbx-pod).lg-mini.lr-pod .lbx-face,:is(#lb-podium,.lbx-pod).lg-mini.lr-pod .lbx-col--1 .lbx-face{padding-left:2px;padding-right:2px}
}
.lr-you{margin:4px 0 0;font-size:15px;color:var(--muck-text-2,#b4b4b4)}
.lr-you b{color:var(--muck-gold,#ffd34f)}

/* The move: from room to room */
.lr-move{margin-top:18px;padding:16px;border:1px solid var(--muck-line,#292929);border-radius:12px;background:var(--muck-surface-2,#1b1b1b)}
.lr-move--up{border-color:var(--muck-gold-muted,#d8bd84)}
.lr-rooms{display:flex;align-items:center;justify-content:center;gap:12px}
.lr-room{position:relative;width:150px;border-radius:9px;overflow:hidden;border:1px solid var(--muck-line-strong,#3a3a3a)}
.lr-room img{display:block;width:100%;aspect-ratio:792/360;object-fit:cover}
.lr-room b{position:absolute;left:0;right:0;bottom:0;padding:16px 8px 6px;background:linear-gradient(transparent,#000000d9);font-size:12px;text-align:left}
.lr-arrow{font-size:22px;color:var(--muck-gold,#ffd34f)}
.lr-move--down .lr-arrow{color:var(--muck-text-3,#7d7d7d)}
.lr-move .lr-room--to{transition:transform .6s cubic-bezier(.2,.9,.3,1.2),box-shadow .6s ease}
.lr-move--up .lr-room--to{transform:translateY(16px)}
.lr-move--down .lr-room--to{transform:translateY(-16px)}
.lr-move.is-on .lr-room--to{transform:none}
.lr-move--up.is-on .lr-room--to{border-color:var(--muck-gold,#ffd34f);box-shadow:0 0 0 1px var(--muck-gold,#ffd34f)}
.lr-move--down .lr-room--from{opacity:.55}
.lr-move h3{margin:14px 0 4px;font-size:20px;font-weight:750;letter-spacing:-.02em}
.lr-move--up h3{color:var(--muck-gold,#ffd34f)}
.lr-move p{margin:0;font-size:13.5px;color:var(--muck-text-2,#b4b4b4)}

/* Prize and badge */
.lr-prize{margin-top:16px}
.lr-prize b{display:block;font-size:40px;font-weight:800;letter-spacing:-.03em;color:var(--muck-gold,#ffd34f);font-variant-numeric:tabular-nums}
.lr-prize small{font-size:13px;color:var(--muck-text-2,#b4b4b4)}
.lr-badge{display:flex;align-items:center;justify-content:center;gap:12px;margin:14px auto 0;padding:10px 16px;width:fit-content;border:1px solid var(--muck-gold-muted,#d8bd84);border-radius:12px;text-align:left}
.lr-badge>span{font-size:28px}
.lr-badge b{display:block;color:var(--muck-gold,#ffd34f)}
.lr-badge small{font-size:12.5px;color:var(--muck-text-2,#b4b4b4)}
.lr-badge.is-on{animation:lrPop .5s cubic-bezier(.2,.9,.3,1.4)}
@keyframes lrPop{0%{transform:scale(.7)}100%{transform:scale(1)}}
.lr-actions{display:flex;justify-content:center;gap:10px;margin-top:20px}
.lr-btn{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border:1px solid var(--muck-line-strong,#3a3a3a);border-radius:8px;color:var(--muck-text,#f2f2f2);font-weight:800;font-size:14px;text-decoration:none}
.lr-btn--gold{border:0;background:var(--muck-gold-cta,#ffd34f);color:var(--muck-gold-ink,#0b1117)}

/* Confetti */
.lr-confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.lr-confetti i{position:absolute;top:-10px;width:7px;height:12px;border-radius:2px;animation:lrFall var(--d) ease-in forwards}
@keyframes lrFall{to{transform:translate(calc(var(--x) * 120px),620px) rotate(var(--r));opacity:0}}
@media(prefers-reduced-motion:reduce){.lr-beat,.lr-rise,.lr-card,.lr-move .lr-room--to{transition:none}.lr-confetti{display:none}.lr-badge.is-on{animation:none}}
@media(max-width:600px){
  .lr-card{padding:52px 16px 18px}   /* the title starts under Skip/Close, not behind it */
  .lr-head h2{font-size:22px}
  .lr-room{width:120px}
  .lr-prize b{font-size:34px}
  .lr-actions{flex-direction:column}
}

/* The climb (MuckLeagueClimb): a gold card that drops in over the room's picture after a game moves you up your group */
.lc-card{position:fixed;left:50%;top:84px;z-index:2100;width:min(440px,calc(100vw - 24px));padding:22px 22px 16px;border:1px solid var(--muck-gold,#ffd34f);border-radius:16px;overflow:hidden;
  background:linear-gradient(180deg,#0e0e0ea6 0%,#0e0e0ef2 46%,#0e0e0e 100%),var(--art) center top/cover,#141414;color:var(--muck-text,#f2f2f2);text-align:center;
  box-shadow:0 0 0 1px #ffd34f40,0 24px 70px #000d,0 0 60px #ffd34f26;transform:translate(-50%,-140%);transition:transform .55s cubic-bezier(.2,1.1,.3,1.15);font-family:var(--muck-font,Inter,system-ui,sans-serif)}
.lc-card.is-on{transform:translate(-50%,0)}
.lc-card::after{content:'';position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,#ffffff2e 50%,transparent 65%);transform:translateX(-120%);pointer-events:none}
.lc-card.is-rolled::after{transition:transform 1.1s ease .1s;transform:translateX(120%)}
.lc-x{position:absolute;top:8px;right:10px;width:30px;height:30px;border:0;background:none;color:var(--muck-text-2,#b4b4b4);font-size:22px;line-height:1;cursor:pointer}
.lc-x:hover{color:var(--muck-gold,#ffd34f)}
.lc-x:focus-visible,.lc-foot a:focus-visible{outline:2px solid var(--muck-gold,#ffd34f);outline-offset:2px}
.lc-kicker{display:block;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muck-gold-muted,#d8bd84)}
.lc-rank{display:flex;align-items:center;justify-content:center;gap:14px;margin:12px 0 6px;font-weight:800;font-variant-numeric:tabular-nums}
.lc-old{font-size:30px;color:var(--muck-text-3,#7d7d7d);transition:opacity .4s,transform .4s}
.lc-arrow{font-size:24px;color:var(--muck-gold,#ffd34f);opacity:0;transition:opacity .3s .2s}
.lc-new{font-size:58px;letter-spacing:-.03em;color:var(--muck-gold,#ffd34f);opacity:0;transform:translateY(26px) scale(.6);transition:opacity .35s .25s,transform .55s cubic-bezier(.2,1.2,.3,1.4) .25s;text-shadow:0 0 28px #ffd34f66}
.lc-card.is-rolled .lc-old{opacity:.55;transform:translateY(-4px);text-decoration:line-through}
.lc-card.is-rolled .lc-arrow,.lc-card.is-rolled .lc-new{opacity:1;transform:none}
.lc-card h3{margin:0;font-size:22px;font-weight:750;letter-spacing:-.02em}
.lc-card--first h3,.lc-card--zone h3{color:var(--muck-gold,#ffd34f)}
.lc-card p{margin:5px 0 0;font-size:13.5px;line-height:1.5;color:var(--muck-text-2,#b4b4b4)}
.lc-passed{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin-top:12px}
.lc-passed small{font-size:12px;color:var(--muck-text-3,#7d7d7d)}
.lc-passed span{padding:3px 9px;border:1px solid var(--muck-line-strong,#3a3a3a);border-radius:999px;font-size:12px;color:var(--muck-text-2,#b4b4b4);opacity:0;transform:translateY(-8px);transition:opacity .3s,transform .35s;transition-delay:calc(.9s + var(--i) * .15s)}
.lc-card.is-rolled .lc-passed span{opacity:1;transform:translateY(0)}
.lc-foot{display:flex;justify-content:space-between;gap:10px;margin-top:14px;padding-top:12px;border-top:1px solid var(--muck-line,#292929);font-size:12.5px;color:var(--muck-text-2,#b4b4b4)}
.lc-foot a{color:var(--muck-gold,#ffd34f);font-weight:700;text-decoration:none}
.lc-card .lr-confetti i{top:-12px}
.lc-card--first{border-width:2px;box-shadow:0 0 0 1px #ffd34f66,0 24px 70px #000d,0 0 90px #ffd34f40}
.lc-card--first .lc-new{font-size:68px}
@media(prefers-reduced-motion:reduce){.lc-card,.lc-new,.lc-old,.lc-arrow,.lc-passed span{transition:none}.lc-card::after{display:none}}
@media(max-width:600px){.lc-card{top:12px}.lc-new{font-size:48px}.lc-foot{flex-direction:column;align-items:center}}

/* "Turn off League pop-ups" on every League pop-up (the reveal, the climb card, the Sunday nudge) */
.lg-mute{display:block;margin:12px auto 0;padding:4px 6px;border:0;background:none;color:var(--muck-text-3,#7d7d7d);font:600 12px var(--muck-font,Inter,system-ui,sans-serif);text-decoration:underline;text-underline-offset:2px;cursor:pointer}
.lg-mute:hover{color:var(--muck-text,#f2f2f2)}
.lg-mute:focus-visible{outline:2px solid var(--muck-gold,#ffd34f);outline-offset:2px}
.lc-card .lg-mute{margin-top:8px}

/* League corner touts (MuckLeagueTout): the points after a game, the Sunday reminder, "pop-ups off". Bottom right like
   the site's other notifications: the corner at a table, left of MuckBot's button in the lobby. */
.lg-tout{position:fixed;right:22px;bottom:22px;z-index:905;max-width:320px;padding:12px 16px;border:1px solid var(--muck-gold-muted,#d8bd84);border-radius:12px;background:#0e0e0ef2;color:var(--muck-text,#f2f2f2);box-shadow:0 10px 30px #000a;opacity:0;transform:translateY(10px);transition:opacity .3s,transform .3s;font-family:var(--muck-font,Inter,system-ui,sans-serif)}
.lg-tout.is-on{opacity:1;transform:none}
.lg-tout>a,.lg-tout>div{display:block;color:inherit;text-decoration:none}
.lg-tout b{display:block;font-size:14px;color:var(--muck-gold,#ffd34f)}
.lg-tout span{display:block;margin-top:2px;font-size:13px;line-height:1.45;color:var(--muck-text-2,#b4b4b4)}
.lg-tout .lg-mute{margin:6px 0 0;padding:0;text-align:left}
@media(min-width:761px){body:not(.desktop-game-active):not(.mobile-game-active):has(.mw) .lg-tout{right:98px}}
@media(max-width:760px){.lg-tout{right:12px;left:12px;bottom:12px;max-width:none}}

/* The League home room in the cash-out window (assets/table.js _exitHomePreview, _homeMatchMoment) */
.exit-league{margin:14px 0 0;padding:12px 14px;border:1px solid var(--muck-gold-muted,#d8bd84);border-radius:10px;background:color-mix(in srgb,var(--muck-gold,#ffd34f) 8%,transparent);text-align:left;font-family:var(--muck-font,Inter,system-ui,sans-serif)}
.exit-league b{display:flex;align-items:center;gap:6px;font-size:13.5px;color:var(--muck-gold,#ffd34f)}
.exit-league b .material-symbols-rounded{font-size:18px}
.exit-league span:not(.material-symbols-rounded){display:block;margin-top:4px;font-size:13px;line-height:1.5;color:var(--muck-text-2,#b8bec0)}
.exit-league strong{color:var(--muck-text,#f4f1e9)}
.exit-confirm-card.is-matched{position:relative;overflow:hidden;border-color:var(--muck-gold,#ffd34f)}
.exit-match-amount{margin:10px 0 2px;font:800 46px/1 var(--muck-font,Inter,system-ui,sans-serif);letter-spacing:-.03em;color:var(--muck-gold,#ffd34f);font-variant-numeric:tabular-nums;text-shadow:0 0 30px #ffd34f55}
.exit-match-note{font-size:12.5px}
