/* Deck Builder — storefront styles. Served by the worker so the theme side
   stays a tiny shell (<link>/<script> + an empty #xg-deck).

   Every selector is anchored to the #xg-deck ID on purpose: on the LIVE site
   the shell sits in the page BODY, which the theme wraps in its rich-text
   (.rte) styling — and `.rte a`, `.rte img`, `.rte table` outrank bare class
   selectors, which is exactly what crushed the results table (full cell
   borders, shrunken text, underlined links). The id outranks all of that on
   both surfaces, and the results render as a flex list — no <table> for the
   theme's table rules to grab. */
#xg-deck { max-width: 940px; margin: 0 auto; padding: 28px 16px 48px; font-family: var(--xg-font-body, "Inter", sans-serif); }

/* Theme-bleed resets (the .rte wrapper underlines every link and decorates
   every image; the card-name hover restores its own underline on the span). */
#xg-deck a { text-decoration: none; }
#xg-deck img { margin: 0; border: 0; box-shadow: none; }

/* Pre-search hero: the intro rides a near-black card with the exor-red /
   exor-yellow neon treatment (same family as the homepage events band). */
#xg-deck .xg-deck__head {
  position: relative;
  background:
    radial-gradient(520px 240px at 6% -30%, rgba(214, 44, 40, 0.22), transparent 62%),
    radial-gradient(460px 220px at 100% 140%, rgba(255, 216, 0, 0.1), transparent 60%),
    linear-gradient(180deg, #0b0e10, #101417);
  border-radius: 18px;
  padding: 26px 28px 24px;
  margin: 0 0 22px;
  overflow: hidden;
}
#xg-deck .xg-deck__head::before {
  content: "";
  position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, #d62c28, #ff8a2e 45%, #ffd800 75%, transparent);
}
#xg-deck .xg-deck__title {
  display: flex; align-items: center; gap: 0.35em;
  font-family: var(--xg-font-display, "Oswald", "Arial Narrow", sans-serif);
  font-size: clamp(26px, 4vw, 38px); font-weight: 700; text-transform: uppercase;
  letter-spacing: 0.01em; color: #fff; margin: 0 0 8px;
  text-shadow: 0 2px 14px rgba(0, 0, 0, 0.5), 0 0 24px rgba(214, 44, 40, 0.25);
}
/* Store logo beside the title, exactly letter height (1em of the heading). */
#xg-deck .xg-deck__logo { display: block; height: 1em; width: auto; flex: 0 0 auto; }
#xg-deck .xg-deck__intro { color: #b8c2c9; font-size: 15px; line-height: 1.55; margin: 0 0 14px; max-width: 660px; }
#xg-deck .xg-deck__perks { display: flex; flex-wrap: wrap; gap: 8px; }
#xg-deck .xg-deck__perk {
  display: inline-flex; align-items: center; gap: 7px;
  padding: 6px 12px; border-radius: 999px;
  background: rgba(255, 255, 255, 0.07); border: 1px solid rgba(255, 255, 255, 0.14);
  color: #dde5e9; font-size: 12.5px; font-weight: 600; white-space: nowrap;
}
#xg-deck .xg-deck__dot { width: 7px; height: 7px; border-radius: 50%; flex: 0 0 auto; }
#xg-deck .xg-deck__dot--red { background: #ff5a4e; box-shadow: 0 0 8px rgba(214, 44, 40, 0.8); }
#xg-deck .xg-deck__dot--yellow { background: #ffd84d; box-shadow: 0 0 8px rgba(255, 216, 0, 0.7); }
/* The form itself: white card with the site's red accent spine. */
#xg-deck .xg-deck__form {
  margin: 0 0 24px;
  background: var(--xg-surface, #fff);
  border: 1px solid var(--xg-border, #e3e6e8);
  border-left: 4px solid var(--xg-red, #d62c28);
  border-radius: 16px;
  box-shadow: 0 1px 3px rgba(16, 24, 40, 0.06);
  padding: 20px 24px 22px;
}
@media (max-width: 640px) {
  #xg-deck .xg-deck__head { padding: 20px 18px 18px; }
  #xg-deck .xg-deck__form { padding: 16px 16px 18px; }
}
#xg-deck .xg-deck__gamerow { margin: 0 0 16px; max-width: 340px; }
#xg-deck .xg-deck__select {
  width: 100%; box-sizing: border-box; font-family: inherit;
  font-size: 15px; color: var(--xg-ink, #171b1d); background: var(--xg-surface, #fff);
  border: 1px solid var(--xg-border, #d7dbdf); border-radius: var(--xg-radius, 10px);
  padding: 11px 14px; cursor: pointer;
}
#xg-deck .xg-deck__select:focus { outline: none; border-color: var(--xg-red, #d62c28); box-shadow: 0 0 0 3px rgba(214, 44, 40, 0.12); }
#xg-deck .xg-deck__label { display: block; font-weight: 600; font-size: 13px; text-transform: uppercase; letter-spacing: 0.04em; color: var(--xg-text, #3d454b); margin: 0 0 8px; }
#xg-deck .xg-deck__input {
  width: 100%; box-sizing: border-box; min-height: 200px; resize: vertical;
  font-family: ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;
  font-size: 14px; line-height: 1.55; color: var(--xg-ink, #171b1d);
  background: #f7f8fa; border: 1px solid var(--xg-border, #d7dbdf);
  border-radius: var(--xg-radius, 10px); padding: 14px 16px;
}
#xg-deck .xg-deck__input:focus { outline: none; border-color: var(--xg-red, #d62c28); box-shadow: 0 0 0 3px rgba(214, 44, 40, 0.12); background: #fff; }
#xg-deck .xg-deck__actions { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-top: 14px; }
#xg-deck .xg-deck__btn {
  font-family: inherit; font-weight: 700; font-size: 15px;
  border: 0; border-radius: var(--xg-radius, 10px); padding: 12px 22px; cursor: pointer;
  transition: transform 120ms ease, box-shadow 120ms ease, background-color 120ms ease, opacity 120ms ease;
}
#xg-deck .xg-deck__btn:disabled { opacity: 0.6; cursor: default; }
#xg-deck .xg-deck__btn--go, #xg-deck .xg-deck__btn--add { background: var(--xg-red, #d62c28); color: #fff; }
#xg-deck .xg-deck__btn--go:hover:not(:disabled), #xg-deck .xg-deck__btn--add:hover:not(:disabled) { transform: translateY(-1px); box-shadow: 0 8px 22px rgba(214, 44, 40, 0.28); }
#xg-deck .xg-deck__btn--add { font-size: 16px; padding: 14px 26px; }
#xg-deck .xg-deck__btn--ghost { background: transparent; color: var(--xg-text, #3d454b); border: 1px solid var(--xg-border, #d7dbdf); }
#xg-deck .xg-deck__hint { font-size: 12.5px; color: #8a9299; }
#xg-deck .xg-deck__toggle { display: inline-flex; align-items: center; gap: 7px; font-size: 13.5px; color: var(--xg-text, #3d454b); cursor: pointer; user-select: none; }
#xg-deck .xg-deck__toggle input { width: 16px; height: 16px; margin: 0; accent-color: var(--xg-red, #d62c28); cursor: pointer; }
#xg-deck .xg-deck__loading, #xg-deck .xg-deck__none { color: var(--xg-text, #3d454b); font-size: 15px; padding: 18px 2px; margin: 0; }
#xg-deck .xg-deck__loading::before { content: ""; display: inline-block; width: 14px; height: 14px; margin-right: 9px; vertical-align: -2px; border: 2px solid #c9ced3; border-top-color: var(--xg-red, #d62c28); border-radius: 50%; animation: xgspin 0.7s linear infinite; }
@keyframes xgspin { to { transform: rotate(360deg); } }

#xg-deck .xg-deck__summary { background: var(--xg-surface, #fff); border: 1px solid var(--xg-border, #e3e6e8); border-radius: var(--xg-radius, 12px); padding: 16px 18px; margin: 6px 0 16px; }
#xg-deck .xg-deck__sumhead { font-size: 17px; color: var(--xg-ink, #171b1d); }
#xg-deck .xg-deck__sumhead strong { font-size: 20px; }
#xg-deck .xg-deck__dim { color: #8a9299; font-weight: 400; }
#xg-deck .xg-deck__sumbar { height: 8px; border-radius: 5px; background: #eef0f2; overflow: hidden; margin: 10px 0; }
#xg-deck .xg-deck__sumbar span { display: block; height: 100%; background: linear-gradient(90deg, #1a9e57, #34c775); border-radius: 5px; transition: width 400ms ease; }
#xg-deck .xg-deck__sumnums { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 8px; font-size: 14px; color: var(--xg-text, #3d454b); }
#xg-deck .xg-deck__subtotal strong { color: var(--xg-ink, #171b1d); font-size: 16px; }

#xg-deck .xg-deck__addrow { margin: 14px 0; }
#xg-deck .xg-deck__addrow--bottom { margin-top: 18px; }

/* Results list: one bordered card, a labeled header strip, flex rows with
   fixed numeric columns (header and rows share the same column recipe so
   everything lines up without a <table>). */
#xg-deck .xg-deck__listwrap { border: 1px solid var(--xg-border, #e3e6e8); border-radius: var(--xg-radius, 12px); background: var(--xg-surface, #fff); overflow: hidden; margin: 4px 0 6px; }
#xg-deck .xg-deck__hrow, #xg-deck .xg-deck__row { display: flex; align-items: center; gap: 12px; padding: 10px 16px; }
#xg-deck .xg-deck__hrow { padding: 11px 16px; background: #f7f8fa; border-bottom: 1px solid var(--xg-border, #e3e6e8); }
#xg-deck .xg-deck__h { font-size: 11.5px; line-height: 1.2; text-transform: uppercase; letter-spacing: 0.05em; color: #8a9299; font-weight: 700; }
#xg-deck .xg-deck__row { border-bottom: 1px solid #f1f3f5; }
#xg-deck .xg-deck__row:last-child { border-bottom: 0; }
#xg-deck .xg-deck__row:hover { background: #fafbfc; }
/* Same-card group: when one decklist line spans several rows (different
   versions, plus its info strip), an inset bar runs down the whole block
   and the separators INSIDE it soften — visibly one card, subtly. Inset
   shadow, not border, so columns stay aligned with ungrouped rows. */
#xg-deck .xg-deck__row--grp { box-shadow: inset 3px 0 0 0 #d4dae0; }
#xg-deck .xg-deck__row--grp:not(.xg-deck__row--gend) { border-bottom-color: #f7f8fa; }

/* Shared column widths (rows + header) */
#xg-deck .xg-deck__pick, #xg-deck .xg-deck__h--pick { flex: 0 0 22px; }
#xg-deck .xg-deck__pick input, #xg-deck .xg-deck__h--pick input { display: block; width: 16px; height: 16px; margin: 0; accent-color: var(--xg-red, #d62c28); cursor: pointer; }
#xg-deck .xg-deck__qty,  #xg-deck .xg-deck__h--qty  { flex: 0 0 42px; }
#xg-deck .xg-deck__card, #xg-deck .xg-deck__h--card { flex: 1 1 auto; min-width: 0; }
#xg-deck .xg-deck__unit, #xg-deck .xg-deck__h--unit { flex: 0 0 74px; text-align: right; }
#xg-deck .xg-deck__line, #xg-deck .xg-deck__h--line { flex: 0 0 86px; text-align: right; }
#xg-deck .xg-deck__stat, #xg-deck .xg-deck__h--stat { flex: 0 0 172px; text-align: right; }

#xg-deck .xg-deck__qty { font-size: 15px; font-variant-numeric: tabular-nums; font-weight: 700; color: var(--xg-ink, #171b1d); white-space: nowrap; }
#xg-deck .xg-deck__cardlink { display: flex; align-items: center; gap: 12px; color: inherit; min-width: 0; }
#xg-deck .xg-deck__thumb { display: block; width: 40px; height: 56px; object-fit: cover; border-radius: 5px; background: #eef0f2; flex: 0 0 auto; }
#xg-deck img.xg-deck__thumb[data-zoom] { cursor: zoom-in; }
#xg-deck .xg-deck__names { display: flex; flex-direction: column; min-width: 0; }
#xg-deck .xg-deck__name { font-size: 15px; line-height: 1.35; color: var(--xg-ink, #171b1d); font-weight: 600; }
#xg-deck .xg-deck__cardlink:hover .xg-deck__name { color: var(--xg-red, #d62c28); text-decoration: underline; }
#xg-deck .xg-deck__meta { font-size: 12.5px; line-height: 1.35; color: #8a9299; margin-top: 2px; }
/* Per-line version picker: cheapest pre-selected, pricier printings below.
   Sits under the card name, outside the product link. */
#xg-deck .xg-deck__ver { display: block; margin: 5px 0 2px 52px; max-width: 360px; font-family: inherit; font-size: 12.5px; color: var(--xg-text, #3d454b); background: var(--xg-surface, #fff); border: 1px solid var(--xg-border, #d7dbdf); border-radius: 7px; padding: 5px 8px; cursor: pointer; }
#xg-deck .xg-deck__ver:focus { outline: none; border-color: var(--xg-red, #d62c28); }
/* An unticked line stays visible but clearly out of the cart batch. */
#xg-deck .xg-deck__row--off > :not(.xg-deck__pick) { opacity: 0.45; }
#xg-deck .xg-deck__unit { font-size: 14.5px; font-variant-numeric: tabular-nums; white-space: nowrap; color: var(--xg-text, #3d454b); }
#xg-deck .xg-deck__line { font-size: 15px; font-variant-numeric: tabular-nums; white-space: nowrap; font-weight: 700; color: var(--xg-ink, #171b1d); }
#xg-deck .xg-deck__stat { white-space: nowrap; font-size: 12.5px; }
#xg-deck .xg-deck__pill { display: inline-block; padding: 4px 11px; border-radius: 999px; font-weight: 700; }
#xg-deck .xg-deck__stat--ok .xg-deck__pill { background: #e6f6ec; color: #158549; }
#xg-deck .xg-deck__stat--no a { color: #a6adb4; font-weight: 600; }
#xg-deck .xg-deck__stat--no a:hover { color: var(--xg-red, #d62c28); text-decoration: underline; }
#xg-deck .xg-deck__row--miss .xg-deck__name { color: #98a0a6; font-weight: 500; }
/* Partial-fill INFO STRIP: annotates the stock rows above ("2 of 4
   available"), so it must not read as another product line — tinted band,
   smaller text, no qty/price cells. Warm, not alarm-red. */
#xg-deck .xg-deck__row--short { background: #fffcf2; padding-top: 8px; padding-bottom: 8px; }
#xg-deck .xg-deck__row--short:hover { background: #fdf8e9; }
#xg-deck .xg-deck__shortinfo { flex: 1 1 auto; min-width: 0; font-size: 12.5px; line-height: 1.45; color: #8f7325; white-space: normal; }
#xg-deck .xg-deck__stat--short .xg-deck__pill { background: #fff4dd; color: #996c07; }
#xg-deck .xg-deck__shortnote { color: #996c07; font-weight: 600; }
#xg-deck .xg-deck__shortsister { color: #b07514; font-weight: 700; }
#xg-deck .xg-deck__shortsister:hover { text-decoration: underline; }
#xg-deck .xg-deck__missing { margin: 16px 0 0; font-size: 14px; }
#xg-deck .xg-deck__missing summary { cursor: pointer; color: var(--xg-text, #3d454b); font-weight: 600; }
#xg-deck .xg-deck__misslist { columns: 2; margin: 10px 0 0; padding-left: 18px; }
#xg-deck .xg-deck__misslist a { color: var(--xg-text, #3d454b); }
#xg-deck .xg-deck__misslist a:hover { color: var(--xg-red, #d62c28); text-decoration: underline; }

/* Sister-store rows: in stock at another Exor Games location. Amber, not
   green — visually distinct from local stock, and the row links out to that
   store's own site (separate cart), so it never blends into the add-all. */
#xg-deck .xg-deck__row--sister { background: #fffaf0; }
#xg-deck .xg-deck__row--sister:hover { background: #fdf5e6; }
/* Uniform sister-store list (owner): quiet label, then every store as an
   identical solid-amber pill — readable on the pale amber row, no prices. */
#xg-deck .xg-deck__stat--sister { white-space: normal; display: flex; flex-direction: column; align-items: flex-end; gap: 4px; }
#xg-deck .xg-deck__sisterlabel { font-size: 11px; text-transform: uppercase; letter-spacing: 0.04em; color: #996c07; font-weight: 700; }
#xg-deck .xg-deck__sisterstores { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 5px; }
#xg-deck .xg-deck__stat--sister a { display: inline-block; padding: 3px 10px; border-radius: 999px; font-weight: 700; font-size: 12px; background: #b07514; color: #fff; }
#xg-deck .xg-deck__stat--sister a:hover { background: #9a640f; }
#xg-deck .xg-deck__sisternote { color: #b07514; font-weight: 600; }
#xg-deck .xg-deck__sisterhelp { margin: 10px 0 0; font-size: 12.5px; color: #8a9299; }

@media (max-width: 640px) {
  #xg-deck .xg-deck__hrow { display: none; }
  #xg-deck .xg-deck__row { display: block; position: relative; padding: 12px 14px 12px 78px; }
  #xg-deck .xg-deck__pick { position: absolute; left: 14px; top: 15px; }
  #xg-deck .xg-deck__qty { position: absolute; left: 40px; top: 14px; }
  #xg-deck .xg-deck__card { display: block; margin-bottom: 6px; }
  #xg-deck .xg-deck__ver { margin-left: 0; max-width: 100%; }
  #xg-deck .xg-deck__unit, #xg-deck .xg-deck__line, #xg-deck .xg-deck__stat { display: inline-block; text-align: left; margin-right: 16px; }
  #xg-deck .xg-deck__unit::before { content: "Unit "; color: #98a0a6; font-weight: 400; }
  #xg-deck .xg-deck__line::before { content: "Line "; color: #98a0a6; font-weight: 400; }
  #xg-deck .xg-deck__row--short { padding: 10px 14px; }
  #xg-deck .xg-deck__shortinfo { display: block; margin-bottom: 5px; }
  #xg-deck .xg-deck__stat--sister { align-items: flex-start; }
  #xg-deck .xg-deck__sisterstores { justify-content: flex-start; }
  #xg-deck .xg-deck__misslist { columns: 1; }
}
@media (prefers-reduced-motion: reduce) {
  #xg-deck .xg-deck__btn, #xg-deck .xg-deck__sumbar span { transition: none; }
  #xg-deck .xg-deck__loading::before { animation: none; }
}

/* Floating card preview (thumbnail click). Mounted on <body>, outside
   #xg-deck and the theme's .rte, so it gets its own top-level rules. */
.xg-deck-zoom { position: fixed; inset: 0; z-index: 2147483000; background: rgba(15, 18, 20, 0.78); display: flex; align-items: center; justify-content: center; padding: 24px; cursor: zoom-out; }
.xg-deck-zoom img { display: block; max-width: min(92vw, 480px); max-height: 86vh; border-radius: 4.75% / 3.5%; box-shadow: 0 24px 80px rgba(0, 0, 0, 0.55); background: #fff; }

/* ---- Substitutes: similar-effects upsell for out-of-stock lines ---- */
#xg-deck .xg-deck__simbtn {
  /* Reads as an ACTION, not a status: solid green, action verb + count,
     hover lift (owner: shoppers could not tell the old pill was tappable). */
  display: inline-block; margin-top: 6px; padding: 6px 13px;
  font: inherit; font-size: 12.5px; font-weight: 700; cursor: pointer;
  color: #fff; background: linear-gradient(180deg, #2fae6d, #1a7f4b);
  border: 1px solid #14663c; border-radius: 999px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.35), 0 1px 2px rgba(20, 102, 60, 0.25);
  transition: filter 120ms ease, transform 120ms ease, box-shadow 120ms ease;
}
#xg-deck .xg-deck__simbtn:hover {
  filter: brightness(1.07);
  transform: translateY(-1px);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.35), 0 3px 8px rgba(20, 102, 60, 0.3);
}
#xg-deck .xg-deck__row--sub { background: #f4fbf7; }
#xg-deck .xg-deck__row--sub .xg-deck__cardlink { position: relative; }
#xg-deck .xg-deck__subtag {
  position: absolute; left: -4px; top: 4px; z-index: 2;
  padding: 2px 7px; border-radius: 4px; transform: rotate(-6deg);
  font-size: 10px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
  color: #fff; background: linear-gradient(180deg, #2fae6d, #1a7f4b);
  border: 1px solid #14663c;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.45), inset 0 -1px 0 rgba(0,0,0,.25), 0 1px 3px rgba(0,0,0,.3);
  text-shadow: 0 1px 1px rgba(0,0,0,.35);
}
#xg-deck .xg-deck__subnote { display: block; font-size: 12px; color: #1a7f4b; }
#xg-deck .xg-deck__stat--sub { white-space: nowrap; }
#xg-deck .xg-deck__statmiss { color: #8a94a6; font-size: 13px; }
#xg-deck .xg-deck__substat { color: #1a7f4b; font-weight: 800; font-size: 13px; margin-left: 4px; }
#xg-deck .xg-deck__subundo {
  display: inline-block; margin-left: 8px; padding: 0 6px; cursor: pointer;
  font: inherit; font-size: 11.5px; color: #8a94a6; background: none; border: 1px solid #d6dbe4; border-radius: 6px;
}
#xg-deck .xg-deck__subundo:hover { color: #d62c28; border-color: #d62c28; }

.xg-deck-subs {
  position: fixed; inset: 0; z-index: 100000; display: flex; align-items: center; justify-content: center;
  background: rgba(11, 14, 16, .72); padding: 18px;
}
.xg-deck-subs__panel {
  position: relative; display: flex; gap: 22px; max-width: 860px; width: 100%;
  max-height: 88vh; overflow: auto; background: #fff; border-radius: 14px;
  padding: 22px; box-shadow: 0 18px 60px rgba(0,0,0,.4);
  font-family: inherit; color: #1c2330;
}
.xg-deck-subs__close {
  position: absolute; right: 10px; top: 8px; width: 32px; height: 32px; cursor: pointer;
  font-size: 22px; line-height: 1; color: #5a6372; background: #f1f3f7; border: 0; border-radius: 50%;
}
.xg-deck-subs__close:hover { background: #e2e6ee; }
.xg-deck-subs__orig { flex: 0 0 220px; display: flex; flex-direction: column; gap: 8px; }
.xg-deck-subs__orig img { width: 100%; border-radius: 10px; }
.xg-deck-subs__orig strong { font-size: 16px; }
.xg-deck-subs__missp {
  align-self: flex-start; padding: 2px 9px; border-radius: 999px;
  font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em;
  color: #9a3b38; background: #fdeeee; border: 1px solid #f2c7c5;
}
.xg-deck-subs__dim { color: #6b7484; font-size: 12.5px; }
.xg-deck-subs__side { flex: 1 1 auto; min-width: 0; }
.xg-deck-subs__side h4 { margin: 2px 0 12px; font-size: 15px; }
.xg-deck-subs__cards {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 14px;
}
.xg-deck-subs__card { display: flex; flex-direction: column; gap: 4px; font-size: 13px; }
.xg-deck-subs__card img, .xg-deck-subs__noimg { width: 100%; aspect-ratio: 5/7; object-fit: contain; border-radius: 8px; background: #f1f3f7; }
.xg-deck-subs__card strong { font-size: 13.5px; line-height: 1.25; }
.xg-deck-subs__price { font-weight: 700; }
.xg-deck-subs__card img[data-zoom], .xg-deck-subs__orig img[data-zoom] { cursor: zoom-in; }
.xg-deck-subs__add {
  /* auto top margin bottom-aligns every button in a grid row, so cards
     whose set/condition line wraps don't push their button out of rank */
  margin-top: auto; padding: 7px 10px; cursor: pointer; font: inherit; font-size: 13px; font-weight: 700;
  color: #fff; background: linear-gradient(180deg, #2fae6d, #1a7f4b); border: 1px solid #14663c; border-radius: 8px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.35);
}
.xg-deck-subs__add:hover { filter: brightness(1.06); }
@media (max-width: 640px) {
  .xg-deck-subs__panel { flex-direction: column; }
  .xg-deck-subs__orig { flex-basis: auto; }
  .xg-deck-subs__orig img { max-width: 200px; }
}

/* Flavor-titled printings: point back at the decklist name so nobody
   thinks their card was skipped. */
#xg-deck .xg-deck__matchnote { display: block; font-size: 12px; color: #8a6d1f; }
