:root {
  --mp-polish-page: var(--wo-bg, #0b1b22);
  --mp-polish-panel: var(--wo-surface, #102b34);
  --mp-polish-panel-alt: var(--wo-surface-alt, #163944);
  --mp-polish-text: var(--wo-text, #f8f7f0);
  --mp-polish-soft: var(--wo-text-sub, rgba(248,247,240,.72));
  --mp-polish-line: var(--wo-border, rgba(255,255,255,.14));
  --mp-polish-strong: var(--wo-border-strong, rgba(255,255,255,.28));
  --mp-polish-action: var(--wo-button, #8edb12);
  --mp-polish-action-copy: var(--wo-on-button, #071207);
  --mp-polish-shadow: var(--wo-shadow, rgba(0,0,0,.35));
}

.mp-page-fan-club,
.mp-page-card-viewer,
.mp-page-checklists { background: var(--mp-polish-page); color: var(--mp-polish-text); overflow-x: clip; }

/* Shared cart and navigation */
.mp-site-polish { overflow-x: clip; }
#navbarID {
  border-bottom: 2px solid var(--wo-highlight) !important;
  outline: 0 !important;
}
#navbarID .navbar6_container,
#navbarID .navbar6_menu,
#navbarID .navbar6_menu-left,
#navbarID .navbar6_menu-right {
  align-items: center !important;
}
#navbarID .navbar6_container { min-height: 82px; position: relative; }
#navbarID .navbar6_menu { display: grid !important; grid-template-columns: 1fr auto 1fr; inset: 0; margin: 0 !important; position: absolute; width: 100%; }
#navbarID .navbar6_menu-left { display: flex !important; gap: 4px; grid-column: 2; justify-content: center !important; position: static; translate: none; }
#navbarID .navbar6_menu-right { gap: 10px; grid-column: 3; justify-content: flex-end !important; justify-self: end; }
/* .navbar6_menu-right is a sibling of .navbar6_menu, not a child of it, so
   the grid-column/justify-self rules above (meant for a grid item) never
   actually applied anything at desktop -- it was falling back to whatever
   Webflow's own default layout does, which put the cart icon and theme
   button in the wrong place, overlapping the COOL STUFF dropdown.
   .navbar6_menu is absolutely positioned (inset:0), so it never
   participates in a flex layout on .navbar6_container -- making the
   container a flex row only affects the logo, menu-right, and wo-team-btn,
   which is exactly what needs lining up. margin-left:auto on menu-right
   pushes it (and wo-team-btn right after it) to the far right as one
   group, instead of each needing its own separately-guessed absolute
   offset -- the earlier attempt positioned menu-right correctly but left
   wo-team-btn with no matching rule, so it fell back to stacking under it. */
@media (min-width: 992px) {
  #navbarID .navbar6_container {
    display: flex;
    align-items: center;
  }
  #navbarID .navbar6_menu-right {
    align-items: center !important;
    display: flex !important;
    gap: 10px;
    margin-left: auto;
    position: static;
  }
  #navbarID .wo-team-btn {
    margin-left: 10px;
  }
}
/* .navbar6_menu is a full-bleed absolute overlay (inset:0) for its desktop
   grid layout; without this it can intercept clicks meant for menu-right/
   wo-team-btn/wo-cart-toggle, which sit at the same container level. Scoped
   to desktop only -- on mobile, .navbar6_menu IS the real nav-menu panel,
   and the whole mp-mobile-drawer (shop tiles, cart button, cool-stuff
   links) is appended inside it. The old unscoped rule only re-enabled
   pointer-events for .navbar6_menu-left, so every button in the mobile
   drawer was silently unclickable. */
@media (min-width: 992px) {
  #navbarID .navbar6_menu { pointer-events: none; }
  #navbarID .navbar6_menu-left,
  #navbarID .navbar6_menu-left * { pointer-events: auto; }
}
#navbarID .w-nav-brand { align-items: center !important; display: flex !important; height: 82px; justify-content: flex-start !important; min-width: 124px; position: relative; z-index: 2; }
.mp-nav-brand-image { display: block; height: 72px; object-fit: contain; object-position: left center; width: 118px; }
#navbarID :is(.navbar6_link,.navbar6_dropdown-toggle,.navbar6_dropdown-link) {
  align-items: center;
  display: flex;
  gap: 9px;
  justify-content: center;
  text-align: center;
}
.mp-nav-icon { background: transparent; border: 0; border-radius: 8px; display: block; flex: 0 0 34px; height: 34px; object-fit: contain; padding: 0; width: 34px; }
.mp-nav-label { min-width: 0; }
@media (min-width: 992px) {
  #navbarID :is(#wo-cart-toggle,#wo-account-toggle,.wo-team-btn) {
    align-items: center !important;
    border: 1px solid color-mix(in srgb,var(--wo-on-button) 22%,transparent) !important;
    border-radius: 999px !important;
    display: inline-flex !important;
    font-size: 14px !important;
    gap: 8px !important;
    justify-content: center !important;
    min-height: 44px !important;
    min-width: 44px !important;
    padding: 8px 13px !important;
  }
  #navbarID :is(#wo-cart-toggle,#wo-account-toggle,.wo-team-btn) img { height: 25px !important; object-fit: contain; width: 25px !important; }
}

/* Server-paged cards keep every action on one baseline regardless of title
   length, and reserve image/card space before lazy images arrive. */
#wo-live-shop[data-wo-server-paged="true"] .wo-live-card { min-height: 100%; }
#wo-live-shop[data-wo-server-paged="true"] .wo-live-card-body { min-height: 190px; }
#wo-live-shop[data-wo-server-paged="true"] .wo-store-controls > :is(input,select) { min-height: 46px; }
/* The compliance proof sits after the live grid in Webflow. Keep it visually
   reserved until the first server page lands so it cannot become LCP and then
   jump tens of thousands of pixels when cards are inserted. */
#wo-live-shop ~ #sms-consent-information { visibility: hidden; }
#wo-live-shop[data-wo-loaded="true"] ~ #sms-consent-information { visibility: visible; }

/* Hamburger: a theme-colored "patch" badge (matches the team/theme button
   pill) instead of three bare lines, morphing to an X on open. Scoped to
   Webflow's own collapse breakpoint (991px) -- without this it had no media
   query at all, so `display:flex` (via the #navbarID + class selector,
   higher specificity than Webflow's own unscoped rule) forced the button
   visible at every width, including desktop where there's no collapsed menu
   for it to open, and it visually overlapped/ate clicks meant for the
   theme-picker button next to it. */
@media (max-width: 991px) {
  #navbarID .navbar6_menu-button { align-items: center; display: flex; justify-content: center; padding: 0 !important; }
}
@media (min-width: 992px) {
  #navbarID .navbar6_menu-button { display: none !important; }
}
#navbarID .menu-icon { align-items: center; background: var(--wo-button); border-radius: 11px; box-shadow: 0 4px 14px rgba(0,0,0,.28); display: flex; height: 40px; justify-content: center; position: relative; transition: transform .2s ease; width: 40px; }
#navbarID .navbar6_menu-button.w--open .menu-icon { transform: scale(1.06); }
#navbarID .menu-icon_line-top,
#navbarID .menu-icon_line-middle,
#navbarID .menu-icon_line-middle-inner,
#navbarID .menu-icon_line-bottom { background-color: var(--wo-on-button) !important; border-radius: 2px; height: 2px; left: 50%; margin: 0; position: absolute; top: 50%; transition: transform .25s ease, opacity .18s ease; width: 18px; }
#navbarID .menu-icon_line-top { transform: translate(-50%, -6px); }
#navbarID .menu-icon_line-middle,
#navbarID .menu-icon_line-middle-inner { transform: translate(-50%, -50%); }
#navbarID .menu-icon_line-bottom { transform: translate(-50%, 5px); }
#navbarID .navbar6_menu-button.w--open .menu-icon_line-top { transform: translate(-50%, -50%) rotate(45deg); }
#navbarID .navbar6_menu-button.w--open .menu-icon_line-bottom { transform: translate(-50%, -50%) rotate(-45deg); }
#navbarID .navbar6_menu-button.w--open .menu-icon_line-middle,
#navbarID .navbar6_menu-button.w--open .menu-icon_line-middle-inner { opacity: 0; }
#navbarID .navbar6_menu-left > .navbar6_link,
#navbarID .navbar6_menu-left > .navbar6_menu-dropdown > .navbar6_dropdown-toggle { background: transparent !important; border: 0 !important; border-radius: 8px !important; min-height: 46px; padding: 10px 13px !important; }
#mp-floating-cart {
  align-items: center;
  background: var(--mp-polish-action);
  border: 2px solid var(--mp-polish-action-copy);
  border-radius: 999px;
  bottom: max(18px, env(safe-area-inset-bottom));
  box-shadow: 0 16px 44px var(--mp-polish-shadow);
  color: var(--mp-polish-action-copy);
  cursor: pointer;
  display: flex;
  font: 900 14px/1 Exo, system-ui, sans-serif;
  gap: 8px;
  opacity: 0;
  padding: 12px 14px;
  pointer-events: none;
  position: fixed;
  right: max(18px, env(safe-area-inset-right));
  transform: translateY(18px);
  transition: opacity .2s ease, transform .2s ease;
  width: auto;
  z-index: 9998;
}
#mp-floating-cart.is-visible { opacity: 1; pointer-events: auto; transform: translateY(0); }
#mp-floating-cart b { align-items: center; background: var(--mp-polish-action-copy); border-radius: 50%; color: var(--mp-polish-action); display: inline-flex; height: 24px; justify-content: center; min-width: 24px; padding: 0 5px; }
body.mp-chat-enabled #mp-floating-cart { bottom: calc(max(18px, env(safe-area-inset-bottom)) + 76px); }

#mp-chat-launcher {
  align-items: center;
  background: var(--mp-polish-panel);
  border: 2px solid var(--mp-polish-action);
  border-radius: 14px 14px 4px 14px;
  bottom: max(18px, env(safe-area-inset-bottom));
  box-shadow: 5px 5px 0 var(--mp-polish-action), 0 18px 48px var(--mp-polish-shadow);
  color: var(--mp-polish-text);
  cursor: pointer;
  display: flex;
  gap: 11px;
  min-height: 58px;
  padding: 10px 14px 10px 11px;
  position: fixed;
  right: max(18px, env(safe-area-inset-right));
  text-align: left;
  transition: opacity .18s ease, transform .18s ease, box-shadow .18s ease;
  width: auto;
  z-index: 9997;
}
#mp-chat-launcher:hover,#mp-chat-launcher:focus-visible { box-shadow: 3px 3px 0 var(--mp-polish-action), 0 14px 38px var(--mp-polish-shadow); transform: translate(2px,2px); }
#mp-chat-launcher.is-open { opacity: 0; pointer-events: none; transform: translateY(12px); }
.mp-chat-signal { align-items: center; background: var(--mp-polish-action); border: 2px solid var(--mp-polish-action-copy); border-radius: 9px; display: flex; flex: 0 0 38px; height: 34px; justify-content: center; position: relative; }
.mp-chat-signal::before { color: var(--mp-polish-action-copy); content: '▰'; font-size: 18px; line-height: 1; }
.mp-chat-signal i { background: var(--mp-polish-action-copy); bottom: 3px; height: 2px; position: absolute; width: 14px; }
.mp-chat-copy { display: grid; gap: 3px; }
.mp-chat-copy strong { color: inherit; font: 950 13px/1 Exo, system-ui, sans-serif; letter-spacing: .035em; white-space: nowrap; }
.mp-chat-copy small { color: var(--mp-polish-soft); font: 800 9px/1 Exo, system-ui, sans-serif; letter-spacing: .13em; }
#mp-chat-launcher.is-online .mp-chat-copy small { color: var(--mp-polish-action); }

@media (max-width: 520px) {
  #mp-chat-launcher { border-radius: 50%; box-shadow: 4px 4px 0 var(--mp-polish-action), 0 14px 38px var(--mp-polish-shadow); height: 58px; justify-content: center; padding: 8px; width: 58px; }
  .mp-chat-copy { clip: rect(0 0 0 0); clip-path: inset(50%); height: 1px; overflow: hidden; position: absolute; white-space: nowrap; width: 1px; }
  .mp-chat-signal { flex-basis: 38px; }
  body.mp-chat-enabled #mp-floating-cart { bottom: calc(max(18px, env(safe-area-inset-bottom)) + 72px); }
}

#wo-cart-drawer { box-sizing: border-box !important; max-width: min(100vw, 460px) !important; overflow-x: hidden !important; width: min(100vw, 460px) !important; }
#wo-cart-drawer > div:first-child { background: var(--mp-polish-panel-alt) !important; border-color: var(--mp-polish-line) !important; padding: 22px clamp(18px, 5vw, 30px) !important; }
#wo-cart-drawer > div:first-child strong { color: var(--mp-polish-text) !important; font-family: Exo, system-ui, sans-serif; font-size: clamp(24px, 4vw, 32px) !important; }
#wo-cart-close { align-items: center !important; background: var(--mp-polish-action) !important; border: 2px solid var(--mp-polish-action-copy) !important; border-radius: 50% !important; color: var(--mp-polish-action-copy) !important; display: inline-flex !important; font-size: 36px !important; height: 50px !important; justify-content: center !important; line-height: .8 !important; opacity: 1 !important; padding: 0 0 5px !important; width: 50px !important; }
#wo-cart-items { overflow-x: hidden !important; padding: clamp(18px, 4vw, 28px) !important; }
#wo-cart-items > div { align-items: start !important; background: var(--mp-polish-panel-alt); border: 1px solid var(--mp-polish-line) !important; border-radius: 16px; box-sizing: border-box; display: grid !important; gap: 14px !important; grid-template-columns: 104px minmax(0, 1fr); margin-bottom: 14px !important; padding: 14px !important; width: 100%; }
#wo-cart-items > div > img { background: var(--mp-polish-panel); border-radius: 12px !important; height: 104px !important; object-fit: contain !important; width: 104px !important; }
#wo-cart-items > div > div { min-width: 0; }
#wo-cart-items > div > div > div:first-child { color: var(--mp-polish-text) !important; font-size: 17px !important; overflow-wrap: anywhere; }
#wo-cart-items [data-qty-delta] { border-color: var(--mp-polish-strong) !important; height: 36px !important; margin: 0 !important; width: 36px !important; }
#wo-cart-items .wo-remove-item { color: var(--mp-polish-text) !important; grid-column: 2; justify-self: start; margin: 0 !important; opacity: .72; }
#wo-cart-drawer > div:last-child { background: var(--mp-polish-panel) !important; border-color: var(--mp-polish-line) !important; bottom: 0; box-shadow: 0 -14px 36px var(--mp-polish-shadow); padding: 22px clamp(18px, 5vw, 30px) calc(22px + env(safe-area-inset-bottom)) !important; position: sticky; z-index: 2; }
#wo-cart-totals, #wo-cart-totals * { color: var(--mp-polish-text) !important; font-size: 16px !important; }
#wo-cart-checkout { background: var(--mp-polish-action) !important; border: 3px solid var(--mp-polish-action-copy) !important; border-radius: 999px !important; box-shadow: 0 10px 28px var(--mp-polish-shadow); color: var(--mp-polish-action-copy) !important; display: block !important; font-size: 18px !important; min-height: 58px; opacity: 1 !important; }

#wo-live-detail-overlay > div { border: 1px solid var(--mp-polish-strong); box-shadow: 0 26px 80px var(--mp-polish-shadow); box-sizing: border-box; }
#wo-live-detail-overlay [data-wo-close-detail] { align-items: center !important; background: var(--mp-polish-action) !important; border: 3px solid var(--mp-polish-action-copy) !important; border-radius: 50% !important; box-shadow: 0 10px 30px var(--mp-polish-shadow); color: var(--mp-polish-action-copy) !important; display: flex !important; font-size: 36px !important; height: 52px !important; justify-content: center !important; line-height: .8 !important; opacity: 1 !important; padding: 0 0 5px !important; position: absolute !important; right: 12px !important; top: 12px !important; width: 52px !important; z-index: 5 !important; }

#mp-theme-nudge { background: var(--mp-polish-panel); border: 1px solid var(--mp-polish-strong); border-radius: 18px; bottom: max(18px, env(safe-area-inset-bottom)); box-shadow: 0 18px 54px var(--mp-polish-shadow); color: var(--mp-polish-text); display: grid; gap: 7px; left: max(18px, env(safe-area-inset-left)); max-width: min(380px, calc(100vw - 36px)); padding: 18px; position: fixed; z-index: 9997; }
#mp-theme-nudge strong { font: 900 17px/1.2 Exo, system-ui, sans-serif; }
#mp-theme-nudge span { color: var(--mp-polish-soft); line-height: 1.4; }
#mp-theme-nudge div { display: flex; gap: 8px; margin-top: 5px; }
#mp-theme-nudge button { border: 1px solid var(--mp-polish-strong); border-radius: 999px; cursor: pointer; margin: 0; min-height: 42px; padding: 9px 14px; width: auto; }
#mp-theme-nudge [data-mp-pick-theme] { background: var(--mp-polish-action); color: var(--mp-polish-action-copy); font-weight: 900; }
#mp-theme-nudge [data-mp-dismiss-theme] { background: transparent; color: var(--mp-polish-text); }

/* Fan Club */
.mp-page-fan-club > .section {
  background: transparent !important;
  height: auto !important;
  min-height: 0 !important;
  padding: clamp(54px, 8vw, 110px) clamp(16px, 5vw, 64px) !important;
  align-items: center;
  display: flex !important;
  flex-direction: column;
  justify-content: center;
}
.mp-page-fan-club > .section:nth-of-type(even) { background: var(--mp-polish-panel-alt) !important; }
.mp-page-fan-club .wrapper-intro { margin: 0 auto clamp(28px, 5vw, 54px) !important; max-width: 820px !important; width: 100% !important; }
.mp-page-fan-club .wrapper-intro h1,
.mp-page-fan-club .wrapper-intro h2 {
  color: var(--mp-polish-text) !important;
  font-family: Exo, system-ui, sans-serif !important;
  font-size: clamp(40px, 7vw, 88px) !important;
  letter-spacing: -.055em !important;
  line-height: .92 !important;
  margin: 0 0 18px !important;
  text-wrap: balance;
}
.mp-page-fan-club .wrapper-intro p { color: var(--mp-polish-soft) !important; font-size: clamp(16px, 1.8vw, 20px) !important; line-height: 1.55 !important; margin: 0 auto !important; max-width: 720px; }
.mp-page-fan-club .wo-tier-grid { display: grid !important; gap: clamp(16px, 3vw, 28px) !important; grid-template-columns: 1fr !important; margin: 0 auto !important; max-width: 520px !important; width: 100% !important; }
.mp-page-fan-club .wo-tier-card {
  background: var(--mp-polish-panel) !important;
  border: 1px solid var(--mp-polish-line) !important;
  border-radius: 22px !important;
  box-shadow: 0 20px 56px var(--mp-polish-shadow);
  color: var(--mp-polish-text) !important;
  display: flex !important;
  flex-direction: column;
  gap: 14px;
  height: auto !important;
  margin: 0 auto !important;
  max-width: 720px !important;
  min-width: 0;
  padding: clamp(24px, 4vw, 42px) !important;
  width: 100% !important;
}
.mp-page-fan-club .wo-tier-card h3 { color: var(--mp-polish-text) !important; font-size: clamp(28px, 4vw, 46px) !important; margin: 0 !important; }
.mp-page-fan-club .wo-tier-card p { color: var(--mp-polish-soft) !important; line-height: 1.55 !important; }
.mp-page-fan-club .mp-tier-perks { color: var(--mp-polish-text); display: grid; gap: 9px; line-height: 1.35; margin: 0 0 8px; padding-left: 22px; }
.mp-page-fan-club .wo-email-input { background: var(--mp-polish-page) !important; border: 1px solid var(--mp-polish-strong) !important; border-radius: 12px !important; color: var(--mp-polish-text) !important; font-size: 16px !important; height: 50px !important; min-width: 0 !important; width: 100% !important; }
.mp-page-fan-club .wo-tier-button { background: var(--mp-polish-action) !important; border-radius: 999px !important; color: var(--mp-polish-action-copy) !important; font-weight: 900 !important; min-height: 48px; text-align: center; }
.mp-page-fan-club .mp-fanclub-status { color: var(--mp-polish-soft); font-size: 13px; margin-top: 4px; min-height: 18px; }
.mp-page-fan-club .mp-fanclub-status.success { color: var(--mp-polish-action); }
.mp-page-fan-club .mp-fanclub-status.error { color: #ff6a6a; }

/* Pokémon and MTG set viewers */
.mp-page-card-viewer .page-wrapper { height: auto !important; min-height: 0 !important; padding: 0 !important; }
.mp-page-card-viewer .content-wrapper.bluebg.mtg { background: var(--mp-polish-page) !important; height: auto !important; margin: 0 !important; max-width: none !important; min-height: calc(100svh - 64px) !important; padding: clamp(28px, 5vw, 72px) 0 !important; width: 100% !important; }
.mp-page-card-viewer .swiper-section,
.mp-page-card-viewer .container.w-container { height: auto !important; margin: 0 auto !important; max-width: none !important; padding: 0 !important; width: 100% !important; }
.mp-page-card-viewer #embedBlock1,
.mp-page-card-viewer .html-embed-6.mtgswiper { box-sizing: border-box !important; display: block !important; max-width: none !important; padding: 0 !important; width: 100% !important; }
.mp-page-card-viewer .wposb-root,
.mp-page-card-viewer .womtg-root { color: var(--mp-polish-text) !important; font-family: Exo, system-ui, sans-serif !important; }
.mp-page-card-viewer .wposb-wrap,
.mp-page-card-viewer .womtg-wrap { box-sizing: border-box !important; margin: 0 auto !important; max-width: 1440px !important; padding: 0 clamp(16px, 5vw, 64px) !important; width: 100% !important; }
.mp-page-card-viewer .wposb-set-row,
.mp-page-card-viewer .womtg-set-row { background: var(--mp-polish-panel) !important; border-color: var(--mp-polish-line) !important; border-radius: 18px !important; box-shadow: 0 16px 44px var(--mp-polish-shadow); gap: 12px !important; margin-bottom: 20px !important; padding: 14px !important; position: sticky; top: 74px; z-index: 20; }
.mp-page-card-viewer :is(.wposb-set-row,.womtg-set-row) :is(select,input) { border-color: var(--mp-polish-strong) !important; border-radius: 12px !important; font-size: 16px !important; min-width: 0 !important; }
.mp-page-card-viewer :is(.wposb-cards-area,.womtg-cards-area) { gap: clamp(12px, 2vw, 20px) !important; grid-template-columns: repeat(auto-fill, minmax(clamp(150px, 19vw, 260px), 1fr)) !important; }
.mp-page-card-viewer :is(.wposb-card,.womtg-card) { border-color: var(--mp-polish-line) !important; border-radius: 16px !important; box-shadow: 0 14px 38px var(--mp-polish-shadow); min-width: 0; }
.mp-page-card-viewer :is(.wposb-card-img-wrap,.womtg-card-img-wrap) { max-height: min(52svh, 460px); }
.mp-page-card-viewer :is(.wposb-card-name,.womtg-card-name) { font-size: 14px !important; overflow-wrap: anywhere; }
.mp-page-card-viewer :is(.wposb-tbl-wrap,.womtg-tbl-wrap) { max-width: 100%; overflow: auto; }

/* Checklist landing and detail viewers */
.mp-page-checklists > .shop-hero-section + .shop-hero-section { display: none !important; }
.mp-page-checklists > .shop-hero-section { background: var(--mp-polish-panel-alt) !important; height: auto !important; min-height: 0 !important; padding: clamp(48px, 7vw, 92px) clamp(16px, 5vw, 64px) !important; }
.mp-page-checklists .shop-hero-title { color: var(--mp-polish-text) !important; font-size: clamp(40px, 7vw, 84px) !important; letter-spacing: -.055em !important; line-height: .92 !important; }
.mp-page-checklists .paragraph-detials-large { color: var(--mp-polish-soft) !important; font-size: clamp(16px, 1.8vw, 20px) !important; line-height: 1.5 !important; }
.mp-page-checklists .filter-bar { display: flex !important; flex-wrap: wrap !important; gap: 10px !important; justify-content: center; }
.mp-page-checklists .filter-bar .btn { flex: 0 1 auto; margin: 0 !important; min-height: 44px; }
.mp-page-checklists .checklist-grid { display: grid !important; gap: clamp(14px, 2.5vw, 24px) !important; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)) !important; height: auto !important; margin: 0 auto !important; max-width: 1440px !important; min-height: 0 !important; padding: clamp(40px, 6vw, 80px) clamp(16px, 5vw, 64px) !important; width: 100% !important; }
.mp-page-checklists .checklist-card { background: var(--mp-polish-panel) !important; border: 1px solid var(--mp-polish-line) !important; border-radius: 18px !important; box-shadow: 0 16px 42px var(--mp-polish-shadow); color: var(--mp-polish-text) !important; height: auto !important; min-height: 220px; min-width: 0; padding: clamp(22px, 3vw, 32px) !important; }
.mp-page-checklists .checklist-card__title { color: var(--mp-polish-text) !important; font-size: clamp(22px, 2.5vw, 32px) !important; overflow-wrap: anywhere; }
.mp-page-checklists .checklist-card__meta,
.mp-page-checklists .checklist-count { color: var(--mp-polish-soft) !important; }
.mp-page-checklists :is(table,.table-wrapper,[class*="table"]) { max-width: 100%; }
.mp-page-checklists :is(.table-wrapper,[class*="table-wrap"]) { overflow-x: auto; }

@media (max-width: 700px) {
  .mp-page-card-viewer .content-wrapper.bluebg.mtg { padding-top: 22px !important; }
  .mp-page-card-viewer .wposb-set-row,
  .mp-page-card-viewer .womtg-set-row { position: static; }
  .mp-page-card-viewer :is(.wposb-set-row,.womtg-set-row) :is(select,input) { flex-basis: 100% !important; width: 100% !important; }
  .mp-page-card-viewer :is(.wposb-cards-area,.womtg-cards-area) { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .mp-page-checklists .filter-bar { flex-wrap: nowrap !important; justify-content: flex-start; overflow-x: auto; padding-bottom: 8px; }
  .mp-page-checklists .filter-bar .btn { flex: 0 0 auto; }
}

@media (max-width: 991px) {
  #navbarID .navbar6_container { height: 78px; justify-content: space-between !important; min-height: 78px; padding-inline: 14px !important; }
  #navbarID .w-nav-brand { height: 78px; min-width: 148px; }
  .mp-nav-brand-image { height: 72px; width: 146px; }
  #navbarID .navbar6_menu { display: none !important; inset: auto; position: static; }
  #navbarID .navbar6_menu[data-nav-menu-open] { align-items: stretch !important; background: var(--wo-nav-bg) !important; border: 0 !important; box-shadow: 0 18px 38px rgba(0,0,0,.24) !important; box-sizing: border-box; color: var(--wo-on-nav) !important; display: flex !important; flex-direction: column; height: auto !important; justify-content: flex-start !important; margin-inline: auto !important; max-height: calc(100dvh - var(--nav-height, 78px)); max-width: none; min-height: 0 !important; outline: 0 !important; overflow: hidden auto !important; padding: 8px 14px 14px !important; transform: none !important; width: 100% !important; }
  #navbarID .navbar6_menu-left { align-items: stretch !important; display: flex !important; flex-direction: column !important; gap: 0; width: 100% !important; }
  #navbarID .navbar6_menu-left { left: auto; position: static; translate: none; }
  #navbarID .navbar6_menu-right { align-items: center !important; border-top: 1px solid var(--wo-border) !important; display: flex !important; flex-direction: row !important; flex-wrap: wrap !important; gap: 10px; justify-content: center !important; margin-top: 8px !important; padding-top: 10px !important; width: 100% !important; }
  #navbarID .navbar6_link, #navbarID .navbar6_dropdown-toggle { align-items: center; background: transparent !important; border: 0 !important; border-bottom: 1px solid var(--wo-border) !important; border-radius: 0 !important; box-sizing: border-box; color: var(--wo-on-nav) !important; display: flex; font-size: 18px !important; justify-content: space-between; margin: 0 !important; min-height: 46px; padding: 10px 4px !important; width: 100% !important; }
  #navbarID .navbar6_dropdown-list { background: var(--wo-surface) !important; border: 1px solid var(--wo-border) !important; border-radius: 12px !important; box-shadow: none !important; margin-block: 6px !important; max-width: 100% !important; position: static !important; width: 100% !important; }
  #navbarID .navbar6_dropdown-list.w--open { display: grid !important; gap: 4px; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 6px !important; }
  #navbarID .navbar6_dropdown-link { background: transparent !important; border: 0 !important; border-radius: 8px !important; color: var(--wo-text) !important; display: flex !important; min-height: 42px; padding: 8px 10px !important; }
  #navbarID .navbar6_menu-right > a { box-sizing: border-box; display: flex !important; justify-content: center; margin: 0 !important; min-height: 48px; width: auto !important; }
  #navbarID .dropdown-chevron path { fill: currentColor !important; }
  #navbarID .w-nav-overlay { background: var(--wo-nav-bg) !important; border: 0 !important; bottom: auto !important; height: auto !important; inset: var(--nav-height, 78px) 0 auto !important; max-height: calc(100dvh - var(--nav-height, 78px)); outline: 0 !important; overflow: hidden auto !important; position: fixed !important; }
}

@media (max-width: 430px) {
  .mp-page-card-viewer :is(.wposb-cards-area,.womtg-cards-area) { grid-template-columns: 1fr !important; }
  #wo-cart-items > div { grid-template-columns: 82px minmax(0, 1fr); padding: 11px !important; }
  #wo-cart-items > div > img { height: 82px !important; width: 82px !important; }
  #mp-theme-nudge { bottom: 82px; }
  #navbarID .navbar6_dropdown-list.w--open { grid-template-columns: 1fr 1fr; }
  #wo-cart-drawer { width: 100vw !important; }
}

@media (prefers-reduced-motion: reduce) {
  .mp-page-fan-club *, .mp-page-card-viewer *, .mp-page-checklists * { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}

/* Glass-counter navigation */
.mp-sr-only { height: 1px; margin: -1px; overflow: hidden; position: absolute; width: 1px; clip: rect(0 0 0 0); }
#navbarID { overflow: visible !important; }
#navbarID .navbar6_menu-dropdown { position: static !important; }
@media (min-width: 992px) {
  #navbarID .navbar6_menu-dropdown { position: relative !important; }
  #navbarID .navbar6_menu-dropdown::after {
    content: '';
    height: 20px;
    left: -8px;
    position: absolute;
    right: -8px;
    top: 100%;
  }
}
#navbarID .navbar6_menu-left > .navbar6_link { font-weight: 800; }
#navbarID .navbar6_dropdown-toggle { font-weight: 900; letter-spacing: .02em; text-transform: uppercase; }
#navbarID .navbar6_dropdown-list.mp-counter-menu {
  background: var(--wo-surface) !important;
  border: 1px solid var(--wo-border-strong) !important;
  border-radius: 0 0 22px 22px !important;
  box-shadow: 0 28px 70px var(--wo-shadow) !important;
  box-sizing: border-box;
  color: var(--wo-text) !important;
  display: none;
  left: 0 !important;
  max-height: calc(100dvh - var(--nav-height, 82px) - 6px) !important;
  max-width: none !important;
  overflow: auto !important;
  padding: clamp(20px, 2.3vw, 34px) !important;
  position: fixed !important;
  right: 0 !important;
  /* Tuck the drawer under the fixed nav so the pointer never crosses a
     hover dead zone between the toggle and the glass counter. */
  top: calc(var(--nav-height, 82px) - 10px) !important;
  width: 100vw !important;
  z-index: 9997 !important;
}
#navbarID .mp-counter-menu.w--open { display: block !important; }
.mp-counter-head { align-items: center; display: flex; justify-content: center; margin: 0 auto 20px; max-width: 1460px; text-align: center; }
.mp-counter-head span { color: var(--wo-text-muted) !important; font-size: 10px; font-weight: 900; letter-spacing: .18em; text-transform: uppercase; }
.mp-counter-head strong { color: var(--wo-text) !important; font-family: Exo, system-ui, sans-serif; font-size: clamp(20px, 2vw, 30px); line-height: 1; text-transform: uppercase; }
.mp-counter-grid {
  background: var(--wo-surface-alt);
  border: 8px solid var(--wo-border-strong);
  border-radius: 16px;
  box-shadow: inset 0 0 0 1px var(--wo-highlight), inset 0 -28px 54px var(--wo-shadow);
  display: grid;
  gap: 2px;
  grid-template-columns: .78fr repeat(4, 1fr);
  margin: 0 auto;
  max-width: 1460px;
  min-height: 300px;
  overflow: hidden;
  position: relative;
}
.mp-counter-grid::after { background: linear-gradient(112deg, transparent 20%, var(--wo-highlight) 48%, transparent 64%); content: ''; inset: 0; opacity: .08; pointer-events: none; position: absolute; transform: translateX(-30%); transition: transform .35s ease; z-index: 4; }
.mp-counter-grid:hover::after { transform: translateX(30%); }
#navbarID .mp-counter-zone { background: var(--wo-surface); border-right: 1px solid var(--wo-border); color: var(--wo-text) !important; display: flex; min-height: 284px !important; overflow: hidden; padding: 0 !important; position: relative; text-decoration: none !important; }
.mp-counter-zone:last-child { border-right: 0; }
.mp-counter-zone::after { background: var(--wo-highlight); content: ''; inset: 0; opacity: 0; pointer-events: none; position: absolute; transition: opacity .18s ease; }
.mp-counter-zone:hover::after,.mp-counter-zone:focus-visible::after { opacity: .1; }
.mp-counter-copy { align-self: end; display: grid; gap: 4px; padding: 20px; position: relative; width: 100%; z-index: 6; }
.mp-counter-copy strong { color: var(--wo-text) !important; font-family: Exo, system-ui, sans-serif; font-size: clamp(24px, 2.4vw, 38px); font-weight: 950; line-height: .9; text-transform: uppercase; }
.mp-counter-copy > span { color: var(--wo-text-sub) !important; font-size: 11px; font-weight: 800; line-height: 1.25; }
.mp-counter-merch { inset: 10px 10px 72px; pointer-events: none; position: absolute; z-index: 2; }
.mp-counter-item { background: transparent; border: 0; border-radius: 8px; box-shadow: none; display: block; height: 76%; left: 17%; overflow: visible; position: absolute; top: 7%; transform: rotate(-3deg); transition: transform .2s ease; width: 56%; }
.mp-counter-item img { filter: drop-shadow(0 14px 14px var(--wo-shadow)); height: 100%; object-fit: contain; width: 100%; }
.mp-counter-item--2 { height: 62%; left: 44%; top: 21%; transform: rotate(4deg); width: 48%; z-index: 2; }
.mp-counter-item--3 { height: 48%; left: 5%; top: 38%; transform: rotate(2deg); width: 40%; z-index: 3; }
.mp-counter-zone:hover .mp-counter-item--1,.mp-counter-zone:focus-visible .mp-counter-item--1 { transform: rotate(-2deg) translateY(-5px); }
.mp-counter-zone:hover .mp-counter-item--2,.mp-counter-zone:focus-visible .mp-counter-item--2 { transform: rotate(3deg) translateY(-7px); }
.mp-counter-zone:hover .mp-counter-item--3,.mp-counter-zone:focus-visible .mp-counter-item--3 { transform: rotate(1deg) translateY(-4px); }
.mp-counter-sticker { background: var(--wo-button); border: 1px solid var(--wo-on-button); border-radius: 3px; color: var(--wo-on-button) !important; font: 950 9px/1 Exo,system-ui,sans-serif; padding: 6px 7px; position: absolute; right: 12px; top: 12px; transform: rotate(3deg); z-index: 7; }
.mp-counter-rail { align-items: center; color: var(--wo-text-muted); display: flex; font: 800 9px/1 Exo,system-ui,sans-serif; gap: 12px; letter-spacing: .16em; margin: 12px auto 0; max-width: 1460px; }
.mp-counter-rail i { border-top: 1px solid var(--wo-border-strong); flex: 1; }
.mp-counter-rail b { color: var(--wo-highlight); font-size: 14px; }
.mp-cool-grid { display: grid; gap: 12px; grid-template-columns: repeat(4,minmax(0,1fr)); margin: 0 auto; max-width: 1320px; }
.mp-cool-object { background: var(--wo-surface-alt); border: 1px solid var(--wo-border); border-radius: 14px; color: var(--wo-text) !important; display: flex; min-height: 240px; overflow: hidden; position: relative; text-decoration: none !important; }
.mp-cool-object:hover,.mp-cool-object:focus-visible { border-color: var(--wo-highlight); transform: translateY(-3px); }
.mp-cool-scene { display: block; inset: 8px 8px 56px; position: absolute; }
.mp-cool-scene img { display: block !important; filter: drop-shadow(0 12px 18px var(--wo-shadow)); height: 100% !important; object-fit: contain; transform: rotate(-3deg) scale(1.18); width: 100% !important; }
.mp-cool-object--mtg-viewer .mp-cool-scene img { transform: rotate(3deg) scale(1.18); }
.mp-cool-object--fan-club .mp-cool-scene { border: 1px solid var(--wo-border-strong); border-radius: 9px; }
.mp-cool-object .mp-counter-copy { padding: 16px; }
.mp-cool-object .mp-counter-copy strong { font-size: 20px; }
.mp-mobile-drawer { display: none; }

/* Thermal receipt footer */
.mp-receipt-footer { background: var(--wo-footer-bg) !important; box-sizing: border-box; isolation: isolate; min-height: 0 !important; padding: clamp(50px,7vw,90px) 0 !important; position: relative; z-index: 6; }
.mp-receipt-surface { box-sizing: border-box; margin: 0; max-width: none; padding: 14px 0; width: 100%; }
.mp-receipt { background: var(--wo-text); box-shadow: 0 28px 65px var(--wo-shadow); box-sizing: border-box; color: var(--wo-bg) !important; margin: 0; max-width: none; padding: clamp(30px,5vw,52px) clamp(22px,5vw,76px); position: relative; width: 100%; }
.mp-receipt::before,.mp-receipt::after { background: linear-gradient(135deg,transparent 8px,var(--wo-text) 0) 0 0/16px 16px repeat-x; content: ''; height: 16px; left: 0; position: absolute; right: 0; }
.mp-receipt::before { top: -15px; transform: rotate(180deg); }
.mp-receipt::after { bottom: -15px; }
.mp-receipt-footer .mp-receipt,.mp-receipt-footer .mp-receipt * { color: var(--wo-bg) !important; }
.mp-receipt-head { align-items: center; display: flex; gap: 14px; justify-content: center; text-align: left; }
.mp-receipt-head img { filter: grayscale(1) contrast(1.25); height: clamp(96px,9vw,142px); object-fit: contain; width: clamp(118px,12vw,178px); }
.mp-receipt-head div { display: grid; gap: 3px; }
.mp-receipt-head strong { font: 950 clamp(22px,4vw,34px)/.95 Exo,system-ui,sans-serif; }
.mp-receipt-head span { font: 800 10px/1.3 ui-monospace,SFMono-Regular,Consolas,monospace; letter-spacing: .08em; }
.mp-receipt-meta { border-block: 2px dashed var(--wo-bg); display: flex; font: 800 10px/1 ui-monospace,SFMono-Regular,Consolas,monospace; justify-content: space-between; margin: 24px 0; padding: 12px 0; }
.mp-receipt-rows { display: grid; }
.mp-receipt-rows a { align-items: center; border-bottom: 1px dotted var(--wo-bg); display: flex; font: 850 14px/1.2 ui-monospace,SFMono-Regular,Consolas,monospace; justify-content: space-between; min-height: 42px; text-decoration: none !important; }
.mp-receipt-rows a:hover,.mp-receipt-rows a:focus-visible,.mp-receipt-social a:hover,.mp-receipt-social a:focus-visible { color: var(--wo-accent) !important; }
.mp-receipt-social { border-bottom: 2px dashed var(--wo-bg); margin-top: 24px; padding-bottom: 22px; text-align: center; }
.mp-receipt-social > strong { font: 950 12px/1 ui-monospace,SFMono-Regular,Consolas,monospace; letter-spacing: .12em; }
.mp-receipt-social > div { display: flex; flex-wrap: wrap; gap: 14px; justify-content: center; margin-top: 14px; }
.mp-receipt-social a { font: 800 12px/1 ui-monospace,SFMono-Regular,Consolas,monospace; text-decoration: underline; text-underline-offset: 3px; }
.mp-receipt-thanks { display: grid; gap: 7px; margin: 24px 0 18px; text-align: center; }
.mp-receipt-thanks strong { font: 950 clamp(18px,3vw,26px)/1 Exo,system-ui,sans-serif; }
.mp-receipt-thanks span { font: 700 10px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace; }
.mp-receipt-barcode { background: repeating-linear-gradient(90deg,var(--wo-bg) 0 2px,transparent 2px 5px,var(--wo-bg) 5px 6px,transparent 6px 10px); height: 42px; margin: 0 auto 12px; max-width: 240px; opacity: .86; }
.mp-receipt small { display: block; font: 700 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace; text-align: center; }

@media (min-width: 900px) {
  .mp-receipt { align-items: center; column-gap: clamp(30px,5vw,84px); display: grid; grid-template-columns: minmax(220px,.85fr) minmax(300px,1.3fr) minmax(220px,.85fr); }
  .mp-receipt-head { grid-column: 1; grid-row: 1; justify-content: flex-start; }
  .mp-receipt-meta { grid-column: 1 / -1; grid-row: 2; }
  .mp-receipt-rows { grid-column: 2; grid-row: 3 / span 2; }
  .mp-receipt-social { border-bottom: 0; grid-column: 3; grid-row: 3; margin: 0; padding: 0; }
  .mp-receipt-thanks { grid-column: 1; grid-row: 3; margin: 0; text-align: left; }
  .mp-receipt-barcode { grid-column: 3; grid-row: 4; margin: 18px 0 0; max-width: none; width: 100%; }
  .mp-receipt small { border-top: 1px dotted var(--wo-bg); grid-column: 1 / -1; grid-row: 5; margin-top: 26px; padding-top: 14px; }
}

#navbarID :is(a,button,input):focus-visible,.mp-receipt-footer a:focus-visible { outline: 3px solid var(--wo-focus) !important; outline-offset: 3px; }

@media (max-width: 1100px) and (min-width: 992px) {
  #navbarID .mp-counter-zone { min-height: 250px !important; }
  .mp-counter-copy { padding: 14px; }
  .mp-counter-copy strong { font-size: 22px; }
}

@media (max-width: 991px) {
  body.mp-mobile-nav-open { overflow: hidden !important; }
  #navbarID .navbar6_menu-left,#navbarID .navbar6_menu-right { display: none !important; }
  #navbarID .navbar6_menu[data-nav-menu-open] { background: var(--wo-nav-bg) !important; bottom: auto !important; display: block !important; height: 100% !important; inset: auto !important; max-height: none !important; max-width: none !important; min-height: 100% !important; overflow: auto !important; padding: 0 !important; position: relative !important; width: 100% !important; }
  #navbarID .w-nav-overlay { background: var(--wo-nav-bg) !important; bottom: 0 !important; height: calc(100dvh - var(--nav-height,78px)) !important; inset: var(--nav-height,78px) 0 0 !important; max-height: none !important; overflow: hidden !important; position: fixed !important; }
  #navbarID .mp-mobile-drawer { background: var(--wo-bg); box-sizing: border-box; color: var(--wo-text); display: grid; gap: 16px; min-height: 100%; padding: 16px 14px calc(24px + env(safe-area-inset-bottom)); }
  .mp-mobile-drawer-head { align-items: center; display: grid; gap: 12px; grid-template-columns: 64px 1fr 48px; }
  .mp-mobile-drawer-head img { height: 58px; object-fit: contain; width: 64px; }
  .mp-mobile-drawer-head div { display: grid; gap: 3px; }
  .mp-mobile-drawer-head span { color: var(--wo-text-muted); font-size: 9px; font-weight: 900; letter-spacing: .16em; }
  .mp-mobile-drawer-head strong { color: var(--wo-text); font-family: Exo,system-ui,sans-serif; font-size: 21px; line-height: 1; text-transform: uppercase; }
  .mp-mobile-drawer-close { align-items: center; background: var(--wo-surface); border: 1px solid var(--wo-border-strong); border-radius: 50%; color: var(--wo-text); display: flex; font-size: 32px; height: 46px; justify-content: center; padding: 0 0 4px; width: 46px; }
  .mp-mobile-cart-cta { align-items: center; background: var(--wo-button); border: 0; border-radius: 14px; color: var(--wo-on-button) !important; display: flex; font-weight: 900; gap: 10px; min-height: 56px; padding: 12px 16px; text-decoration: none !important; width: 100%; }
  .mp-mobile-cart-cta span { font-size: 24px; line-height: 1; }
  .mp-mobile-cart-cta strong { flex: 1; font-size: 15px; text-align: left; text-transform: uppercase; }
  .mp-mobile-cart-cta b { align-items: center; background: var(--wo-on-button); border-radius: 50%; color: var(--wo-button); display: inline-flex; font-size: 13px; height: 26px; justify-content: center; min-width: 26px; padding: 0 6px; }
  .mp-mobile-case-grid { background: var(--wo-surface-alt); border: 6px solid var(--wo-border-strong); border-radius: 16px; box-shadow: inset 0 0 0 1px var(--wo-highlight), inset 0 -24px 42px var(--wo-shadow); display: grid; gap: 1px; grid-template-columns: repeat(2,minmax(0,1fr)); overflow: hidden; position: relative; }
  .mp-mobile-case-grid::after { background: linear-gradient(112deg,transparent 15%,var(--wo-highlight) 48%,transparent 72%); content: ''; inset: 0; opacity: .08; pointer-events: none; position: absolute; }
  #navbarID .mp-mobile-case-card { background: var(--wo-surface); border: 0; border-radius: 0; color: var(--wo-text) !important; display: flex; min-height: 156px !important; overflow: hidden; padding: 0 !important; position: relative; text-decoration: none !important; }
  .mp-mobile-case-card .mp-counter-merch { inset: 8px 8px 58px; }
  .mp-mobile-case-card .mp-counter-item { height: 100%; left: 15%; top: 0; width: 70%; }
  .mp-mobile-case-card .mp-counter-copy { padding: 12px; }
  .mp-mobile-case-card .mp-counter-copy strong { font-size: 19px; }
  .mp-mobile-case-card .mp-counter-copy > span { font-size: 9px; }
  .mp-mobile-view-all { align-items: center; background: var(--wo-button); border-radius: 999px; color: var(--wo-on-button) !important; display: flex; font-weight: 950; justify-content: center; min-height: 48px; padding: 9px 18px; text-decoration: none !important; text-transform: uppercase; }
  .mp-mobile-drawer h2 { color: var(--wo-text); font: 950 18px/1 Exo,system-ui,sans-serif; margin: 8px 0 0; text-transform: uppercase; }
  .mp-mobile-cool-grid { display: grid; gap: 8px; grid-template-columns: repeat(2,minmax(0,1fr)); }
  #navbarID .mp-mobile-cool-grid a { align-items: center; background: var(--wo-surface-alt); border: 1px solid var(--wo-border); border-radius: 12px; color: var(--wo-text) !important; display: flex; font-size: 12px !important; gap: 9px; min-height: 54px !important; padding: 8px !important; text-decoration: none !important; }
  .mp-mobile-cool-grid img { height: 38px; object-fit: contain; width: 38px; }
  .mp-mobile-cool-grid span { font-size: 11px; font-weight: 850; line-height: 1.15; }
}

@media (max-width: 380px) {
  #navbarID .mp-mobile-case-card { min-height: 146px !important; }
  .mp-mobile-drawer { gap: 14px; padding-inline: 12px; }
  .mp-mobile-case-card .mp-counter-copy strong { font-size: 19px; }
  .mp-receipt { padding: 28px 20px; }
}

@media (prefers-reduced-motion: reduce) {
  .mp-counter-grid::after,.mp-counter-item,.mp-cool-object { transition: none !important; }
  .mp-counter-zone:hover .mp-counter-item,.mp-counter-zone:focus-visible .mp-counter-item,.mp-cool-object:hover,.mp-cool-object:focus-visible { transform: none !important; }
}
