
/* Collector Crypt / Jupiter gacha investigation — scoped under .gacha-article */

.gacha-article {
  position: relative;
  isolation: isolate;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  width: 100vw;
  overflow-x: hidden;
}

.gacha-article .inv-progress-track {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  z-index: 120;
  background: transparent;
  pointer-events: none;
}

.gacha-article .inv-progress-fill {
  height: 100%;
  width: 0%;
  background: linear-gradient(96deg, #f93f9c, #af3e76, #00d8dd);
}

.gacha-article {
  /* Bitquery brand tokens */
    --bq-white:#ffffff;
    --bq-grey:#aab0bc;
    --bq-dark-grey:#7e8696;
    --bg:#06090d;
    --card:#0c121c;
    --navy:#111c32;
    --navy-deep:#142739;
    --line:rgba(255,255,255,0.10);
    --line-2:rgba(255,255,255,0.06);
    --cta:#93254b; --cta-hover:#af3e76; --cta-border:#621832;
    --pink:#f93f9c; --pink-soft:#f788c0; --magenta:#af3e76; --teal:#00d8dd; --blue:#0029ff;
    --gradient:linear-gradient(96deg,#f93f9c 0%,#af3e76 46%,#00d8dd 100%);

    /* data semantics (kept from charts, CVD-safe) */
    --loss:#D64550; --gain:#0E9F9A;

    --font:'DM Sans',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
    --mono:'JetBrains Mono',ui-monospace,monospace;
    --measure:42rem; --wide:58rem;
}

.gacha-article * {
  box-sizing:border-box;
}

.gacha-article {
  background: var(--bg);
  color: var(--bq-grey);
  font-family: var(--font);
  font-size: 18px;
  line-height: 1.66;
  font-weight: 400;
  letter-spacing: -0.1px;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.gacha-article a {
  color:var(--pink-soft); text-decoration:none; border-bottom:1px solid color-mix(in srgb, var(--pink-soft) 40%, transparent);
}

.gacha-article a:hover {
  color:var(--pink); border-bottom-color:var(--pink);
}

.gacha-article .wrap {
  max-width:var(--measure); margin:0 auto; padding:0 26px;
}

.gacha-article .wide {
  max-width:var(--wide); margin:0 auto; padding:0 26px;
}

.gacha-article /* masthead */
  .masthead {
  border-bottom:1px solid var(--line);
}

.gacha-article .masthead .wrap {
  display:flex; align-items:center; justify-content:space-between; padding:18px 26px; max-width:var(--wide);
}

.gacha-article .brand {
  font-weight:700; letter-spacing:-.02em; font-size:17px; color:var(--bq-white);
}

.gacha-article .brand span {
  background:var(--gradient); -webkit-background-clip:text; background-clip:text; color:transparent;
}

.gacha-article .masthead .sub {
  font-size:10px; letter-spacing:1px; text-transform:uppercase; color:var(--bq-dark-grey); font-weight:500;
}

.gacha-article header.article {
  padding-top:56px;
}

.gacha-article .kicker {
  font-weight:500; font-size:10px; letter-spacing:1px; text-transform:uppercase;
    display:flex; align-items:center; gap:11px; margin-bottom:22px;
}

.gacha-article .kicker span {
  background:var(--gradient); -webkit-background-clip:text; background-clip:text; color:transparent;
}

.gacha-article .kicker::before {
  content:""; width:26px; height:2px; background:var(--gradient); display:inline-block; border-radius:2px;
}

.gacha-article h1 {
  font-family:var(--font); font-weight:500; letter-spacing:-1.4px; color:var(--bq-white);
    font-size:clamp(34px, 6vw, 60px); line-height:1.02; margin:0; text-wrap:balance;
}

.gacha-article .deck {
  color:var(--bq-grey); font-size:clamp(19px,2.5vw,23px); font-weight:400;
    line-height:1.45; margin:22px 0 0; text-wrap:pretty; max-width:34rem;
}

.gacha-article .byline {
  font-size:12px; letter-spacing:.4px; font-weight:500; color:var(--bq-dark-grey);
    margin:30px 0 0; padding:16px 0 0; border-top:1px solid var(--line);
    display:flex; flex-wrap:wrap; gap:6px 10px; align-items:center; text-transform:uppercase;
}

.gacha-article .byline b {
  color:var(--bq-white); font-weight:500;
}

.gacha-article .byline .dot {
  opacity:.5;
}

.gacha-article /* hero stat strip */
  .stripwrap {
  border-top:1px solid var(--line); border-bottom:1px solid var(--line); margin:44px 0 8px;
}

.gacha-article .stripwrap::before {
  content:""; display:block; height:2px; background:var(--gradient); margin-bottom:-1px;
}

.gacha-article .strip {
  display:grid; grid-template-columns:repeat(4,1fr);
}

.gacha-article .strip .cell {
  padding:26px 22px 24px 0; border-right:1px solid var(--line-2);
}

.gacha-article .strip .cell:last-child {
  border-right:none; padding-right:0;
}

.gacha-article .strip .fig {
  font-weight:500; color:var(--bq-white);
    font-size:clamp(30px,4vw,44px); line-height:1; letter-spacing:-1.2px;
    font-variant-numeric:tabular-nums;
}

.gacha-article .strip .fig.loss {
  color:var(--loss);
}

.gacha-article .strip .fig.gain {
  color:var(--teal);
}

.gacha-article .strip .lab {
  font-size:12.5px; line-height:1.35; color:var(--bq-dark-grey); margin-top:12px;
}

.gacha-article /* body */
  .body {
  margin-top:36px;
}

.gacha-article .body p {
  margin:0 0 1.2em; text-wrap:pretty; color:var(--bq-grey);
}

.gacha-article .body--lede > p:first-of-type::first-letter {
  font-family:var(--font); font-weight:500; float:left; font-size:62px;
    line-height:.8; padding:7px 12px 0 0;
    background:var(--gradient); -webkit-background-clip:text; background-clip:text; color:transparent;
}

.gacha-article h2 {
  font-family:var(--font); font-weight:500; letter-spacing:-.8px; color:var(--bq-white);
    line-height:1.16; margin:58px 0 8px; font-size:clamp(26px,3.2vw,36px); text-wrap:balance;
}

.gacha-article h2 .tick {
  display:block; width:38px; height:3px; background:var(--gradient); margin-bottom:18px; border-radius:2px;
}

.gacha-article .breakline {
  font-family:var(--font); font-weight:500; font-size:clamp(24px,4vw,36px);
    line-height:1.2; letter-spacing:-.8px; margin:46px auto; text-align:center;
    color:var(--bq-white); text-wrap:balance; max-width:33rem;
}

.gacha-article /* pull stat */
  .pull {
  margin:46px 0; padding:28px 0 26px; border-top:1px solid var(--line); border-bottom:1px solid var(--line);
    display:grid; grid-template-columns:auto 1fr; gap:0 30px; align-items:center;
}

.gacha-article .pull .n {
  font-family:var(--font); font-weight:500; line-height:.9; letter-spacing:-3px;
    font-size:clamp(56px,10vw,92px); font-variant-numeric:tabular-nums;
    background:var(--gradient); -webkit-background-clip:text; background-clip:text; color:transparent;
}

.gacha-article .pull .t {
  font-size:16px; line-height:1.5; color:var(--bq-grey);
}

.gacha-article .pull .t b {
  color:var(--bq-white); font-weight:500;
}

.gacha-article /* charts */
  figure {
  margin:42px auto;
}

.gacha-article figure.chart {
  max-width:var(--wide);
}

.gacha-article .chartcard {
  background:var(--card); border:1px solid var(--line); border-radius:14px;
    padding:20px 22px; box-shadow:0 1px 2px rgba(0,0,0,.5), 0 12px 34px rgba(0,0,0,.35); overflow-x:auto;
}

.gacha-article .chartcard svg {
  display:block; width:100%; height:auto; min-width:520px;
}

.gacha-article figcaption {
  font-size:13px; line-height:1.5; color:var(--bq-dark-grey); font-weight:400;
    margin-top:14px; padding-left:16px; border-left:2px solid var(--line); max-width:42rem;
}

.gacha-article figcaption b {
  color:var(--bq-grey); font-weight:500;
}

.gacha-article /* methods */
  .method {
  background:linear-gradient(180deg,#0c121c 0%,#0a1017 100%); border:1px solid var(--line);
    border-left:3px solid var(--magenta); border-radius:14px; padding:34px 38px; margin:16px 0 0;
}

.gacha-article .method h2 {
  margin:0 0 8px; font-size:clamp(22px,3vw,28px);
}

.gacha-article .method .sub {
  font-size:10px; letter-spacing:1px; text-transform:uppercase; font-weight:500; margin:0 0 8px;
    background:var(--gradient); -webkit-background-clip:text; background-clip:text; color:transparent;
}

.gacha-article .method p {
  font-size:15px; line-height:1.66; color:var(--bq-dark-grey); margin:0 0 1.1em;
}

.gacha-article .method p:last-child {
  margin-bottom:0;
}

.gacha-article .addr {
  font-family:var(--mono); font-size:.84em; background:rgba(255,255,255,.05); color:var(--bq-grey);
    padding:2px 6px; border-radius:5px; word-break:break-all; border:1px solid var(--line-2);
}

.gacha-article hr.sep {
  border:none; border-top:1px solid var(--line); margin:58px auto 44px; max-width:var(--wide);
}

.gacha-article .cta {
  max-width: var(--wide);
  margin: 56px auto 0;
  padding: 0 26px;
}

.gacha-article .cta-inner {
  background: linear-gradient(160deg, #06090d 0%, #142739 100%);
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: 38px 40px;
}

.gacha-article .cta-kicker {
  font-family: var(--font);
  font-size: 10px;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--pink);
  margin: 0 0 12px;
  font-weight: 500;
}

.gacha-article .cta-title {
  font-family: var(--font);
  font-weight: 500;
  letter-spacing: -0.8px;
  color: var(--bq-white);
  font-size: clamp(22px, 3.4vw, 30px);
  line-height: 1.14;
  margin: 0;
  text-wrap: balance;
}

.gacha-article .cta-copy {
  font-size: 16px;
  line-height: 1.6;
  color: var(--bq-dark-grey);
  margin: 16px 0 0;
  max-width: 38rem;
}

.gacha-article .cta-btn {
  display: inline-block;
  margin-top: 26px;
  background: var(--cta);
  color: var(--bq-white);
  font-family: var(--font);
  font-weight: 500;
  font-size: 16px;
  border: none;
  border-radius: 4px;
  border-bottom: none;
  padding: 16px 24px;
  text-decoration: none;
  transition: background 0.16s ease;
}

.gacha-article .cta-btn:hover {
  background: var(--cta-hover);
  color: var(--bq-white);
  border-bottom: none;
}

.gacha-article a.cta-btn {
  border-bottom: none;
}

.gacha-article footer {
  max-width:var(--wide); margin:48px auto 72px; padding:26px 26px 0; border-top:1px solid var(--line);
    font-size:13.5px; color:var(--bq-dark-grey); line-height:1.6;
  background: transparent;
}

.gacha-article footer .lg {
  font-weight:700; color:var(--bq-white); letter-spacing:-.01em;
}

.gacha-article footer .lg span {
  background:var(--gradient); -webkit-background-clip:text; background-clip:text; color:transparent;
}

@media (max-width:640px) {

  .gacha-article {
    font-size:17px;
  }

  .gacha-article .strip {
    grid-template-columns:1fr 1fr;
  }

  .gacha-article .strip .cell {
    padding:18px 16px 16px 0;
  }

  .gacha-article .strip .cell:nth-child(2n) {
    border-right:none; padding-right:0;
  }

  .gacha-article .strip .cell:nth-child(-n+2) {
    border-bottom:1px solid var(--line-2);
  }

  .gacha-article .pull {
    grid-template-columns:1fr; gap:12px;
  }

  .gacha-article .method {
    padding:26px 22px;
  }

  .gacha-article .cta {
    padding: 0 20px;
  }

  .gacha-article .cta-inner {
    padding: 28px 24px;
  }

  .gacha-article .wrap, .gacha-article .wide {
    padding:0 20px;
  }

}
