/* Reactor Realms — Play Free deck browser + web PDF generator — v1.0.97 */

/* Browser header -------------------------------------------------------- */
.rr88-decks{background:radial-gradient(circle at 50% 32%,rgba(91,183,153,.055),transparent 34rem),#080c0f}
.rr88-browser-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin:6px 0 34px;padding:0;border:0}
.rr88-faction-tabs{display:flex;gap:28px;min-width:0}
.rr88-faction-tab{position:relative;display:grid;grid-template-columns:58px auto;align-items:center;gap:13px;min-width:250px;padding:8px 0 12px;border:0;border-bottom:2px solid rgba(255,255,255,.08);border-radius:0;background:transparent;color:#fff;text-align:left;cursor:pointer;opacity:.58;transition:opacity .2s,border-color .2s,transform .2s}
.rr88-faction-tab:hover{opacity:.85;transform:translateY(-2px)}
.rr88-faction-tab img{width:58px;height:74px;object-fit:contain;filter:drop-shadow(0 10px 14px rgba(0,0,0,.52))}
.rr88-faction-tab b{display:block;font-family:var(--font-title);font-size:1.12rem;line-height:1.05}
.rr88-faction-tab small{display:block;margin-top:5px;color:#859198;font-size:.72rem;line-height:1.25}
.rr88-faction-tab.active{opacity:1;background:transparent}
.rr88-faction-tab.thorn.active{border-color:#65ae70;box-shadow:none}
.rr88-faction-tab.gloom.active{border-color:#9d68c8;box-shadow:none}

.rr88-view-tabs{display:flex;gap:18px;padding:0;border:0;border-radius:0;background:transparent}
.rr88-view-tabs button{position:relative;padding:8px 0;border:0;border-radius:0;background:transparent;color:#7f8b92;font-family:var(--font-smallcaps);font-size:.72rem;font-weight:900;letter-spacing:.05em;cursor:pointer;transition:color .18s}
.rr88-view-tabs button:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:transparent;transform:scaleX(.25);transition:.18s}
.rr88-view-tabs button:hover{color:#d7dfe3}
.rr88-view-tabs button.active{background:transparent;color:#e4c775}
.rr88-view-tabs button.active:after{background:#d9b45d;transform:scaleX(1)}

/* Card-first stack showcase ------------------------------------------- */
.rr88-deck-stage{min-height:0;padding:4px 0 26px}
.rr88-stack-view{display:flex;flex-direction:column;align-items:center;width:100%;max-width:none;margin:0 auto;gap:4px;text-align:center}
.rr96-stack-focus{position:relative;width:min(760px,100%);height:540px;margin:0 auto;display:flex;align-items:center;justify-content:center}
.rr88-stack-view .play69-stack{position:relative;width:520px;height:520px;perspective:1200px}
.rr88-stack-card{width:320px!important;max-width:none!important;left:50%!important;top:50%!important;transform:translate(calc(-50% + (var(--stack) - 6)*8px),calc(-50% + (var(--stack) - 6)*-3px)) rotate(calc((var(--stack) - 6)*.8deg))!important;filter:drop-shadow(0 24px 28px rgba(0,0,0,.54));transition:transform .2s ease,filter .2s ease,opacity .2s ease}
.rr88-stack-card img{width:100%;border-radius:11px}
.rr88-stack-card[data-stack-top="true"]{z-index:30!important}
.rr88-stack-card[data-stack-top="true"]:hover{transform:translate(-50%,-53%) rotate(1deg) scale(1.025)!important;filter:drop-shadow(0 34px 40px rgba(0,0,0,.68))}
.rr96-stack-focus:before{content:"";position:absolute;left:50%;bottom:54px;width:410px;height:78px;transform:translateX(-50%);border-radius:50%;background:rgba(0,0,0,.45);filter:blur(28px);pointer-events:none}

.rr96-stack-arrow{position:absolute;top:50%;z-index:50;width:58px;height:58px;display:grid;place-items:center;transform:translateY(-50%);border:1px solid rgba(255,255,255,.12);border-radius:50%;background:rgba(10,14,17,.62);backdrop-filter:blur(12px);color:#dfe6e9;cursor:pointer;transition:.18s}
.rr96-stack-arrow span{font-family:Georgia,serif;font-size:2.3rem;line-height:.8;margin-top:-4px}
.rr96-stack-arrow.prev{left:4%}.rr96-stack-arrow.next{right:4%}
.rr96-stack-arrow:hover{border-color:rgba(217,180,93,.62);background:rgba(217,180,93,.08);color:#eed589;transform:translateY(-50%) scale(1.06)}

.rr88-stack-copy{width:min(680px,100%);margin:-4px auto 0;padding:0 20px}
.rr96-card-eyebrow{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:8px}
.rr96-card-eyebrow .kicker{margin:0;font-size:.68rem}
.rr96-card-count{font-family:var(--font-smallcaps);font-size:.63rem;letter-spacing:.06em;color:#707c84}
.rr88-stack-copy h3{font-size:clamp(2rem,3.4vw,3rem);line-height:1;margin:0 0 11px;color:#edf1f3}
.rr88-zone-chips{display:flex;justify-content:center;align-items:center;gap:14px;flex-wrap:wrap;margin:0}
.rr88-zone-chips span{position:relative;padding:0;border:0;border-radius:0;background:transparent;font-family:var(--font-smallcaps);font-size:.62rem;letter-spacing:.055em;color:#85bbb0}
.rr88-zone-chips span+span:before{content:"•";position:absolute;left:-9px;color:#3c494f}

.play69-stack-controls{display:flex;align-items:center;justify-content:center;gap:22px;flex-wrap:wrap;margin-top:20px}
.rr96-open-card,.rr96-shuffle{border:0;background:transparent;font-family:var(--font-smallcaps);font-weight:900;letter-spacing:.05em;cursor:pointer;transition:.18s}
.rr96-open-card{padding:10px 0;border-bottom:2px solid #d9b45d;color:#e6c978;font-size:.72rem}
.rr96-open-card:hover{color:#f4dfa0;border-color:#f0d990}
.rr96-shuffle{padding:10px 0;color:#89969e;font-size:.69rem}
.rr96-shuffle span{display:inline-block;margin-right:4px;font-size:1rem;vertical-align:-1px}
.rr96-shuffle:hover{color:#d2dade}
.rr88-stack-tip{margin:10px 0 0;color:#637078;font-size:.72rem}

/* Spread view ---------------------------------------------------------- */
.rr88-spread-view[hidden],.rr88-stack-view[hidden]{display:none!important}
.rr88-spread-view{display:grid;gap:46px;padding:16px 0 10px}
.rr88-spread-group{padding:0}
.rr88-spread-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:18px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.07)}
.rr88-spread-head h3{margin:0;font-size:1.55rem}.rr88-spread-head span{font-size:.72rem;color:#76838a}
.rr88-spread-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:18px 13px}
.rr88-spread-card{min-width:0;border:0;background:transparent;color:#fff;padding:0;cursor:pointer;text-align:left}
.rr88-spread-card img{display:block;width:100%;border-radius:8px;box-shadow:0 14px 28px rgba(0,0,0,.34);transition:transform .16s,box-shadow .16s}
.rr88-spread-card span{display:block;margin-top:7px;font-size:.66rem;color:#7f8c94;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rr88-spread-card:hover img{transform:translateY(-7px);box-shadow:0 22px 36px rgba(0,0,0,.46)}
.rr88-spread-card:hover span{color:#cbd4d8}

/* Web PDF generator ---------------------------------------------------- */
.rr88-pdf-section{background:radial-gradient(circle at 50% 16%,rgba(101,217,195,.035),transparent 34rem),#070b0e;border-top:1px solid rgba(255,255,255,.05)}
.rr88-pdf-spec{display:grid;gap:3px;text-align:right;padding:4px 0}.rr88-pdf-spec strong{font-family:var(--font-smallcaps);font-size:.7rem;color:#ddc16f;letter-spacing:.06em}.rr88-pdf-spec span{font-size:.7rem;color:#758188}
.rr88-pdf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:42px}
.rr88-pdf-card{position:relative;display:grid;grid-template-columns:180px minmax(0,1fr);align-items:center;gap:28px;min-height:310px;padding:18px 0 30px;border:0;border-bottom:1px solid rgba(255,255,255,.07)}
.rr88-pdf-card:before{content:"";position:absolute;left:4px;top:50%;width:210px;height:210px;border-radius:50%;transform:translateY(-50%);filter:blur(36px);opacity:.11}.rr88-pdf-card.thorn:before{background:#54a65e}.rr88-pdf-card.gloom:before{background:#8b54ad}
.rr88-pdf-card>img{position:relative;z-index:1;width:100%;max-height:280px;object-fit:contain;filter:drop-shadow(0 20px 24px rgba(0,0,0,.5))}
.rr88-pdf-card>div{position:relative;z-index:2}.rr88-pdf-card h3{font-size:1.55rem;margin:7px 0 10px}.rr88-pdf-card p{color:#9eabb2;font-size:.9rem}
.rr88-pdf-options{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:25px;padding:13px 0;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);font-size:.76rem;color:#7c888f}.rr88-pdf-options label{display:flex;align-items:center;gap:7px;color:#bcc6cb}
.rr88-pdf-status{margin:14px 0 4px;padding:10px 0;border:0;border-left:2px solid #66737b;background:transparent;color:#9eabb2;font-size:.78rem;text-indent:10px}.rr88-pdf-status[data-state="working"]{border-color:#d9b45d;color:#dfca8b}.rr88-pdf-status[data-state="done"]{border-color:#65d9c3;color:#a8ddd3}.rr88-pdf-status[data-state="error"]{border-color:#c86d65;color:#e1a29d}


/* v1.0.97 — Dedicated PDF CTA. Never inherit the legacy 3-slice .btn artwork. */
.rr97-pdf-cta{
  -webkit-appearance:none;appearance:none;
  position:relative;isolation:isolate;
  display:inline-flex;align-items:center;justify-content:space-between;gap:26px;
  min-width:184px;min-height:46px;margin-top:16px;padding:0 15px 0 17px;
  border:1px solid rgba(255,255,255,.15);border-radius:7px;
  background:linear-gradient(180deg,rgba(23,29,33,.96),rgba(10,14,17,.98));
  color:#eef2f3;text-shadow:none;box-shadow:0 12px 30px rgba(0,0,0,.24),inset 0 1px rgba(255,255,255,.035);
  font-family:var(--font-smallcaps);font-size:.68rem;font-weight:900;letter-spacing:.075em;
  cursor:pointer;overflow:hidden;transition:border-color .18s ease,background .18s ease,transform .18s ease,box-shadow .18s ease;
}
.rr97-pdf-cta::before,.rr97-pdf-cta::after{content:none!important;display:none!important;background:none!important}
.rr88-pdf-card.thorn .rr97-pdf-cta{border-color:rgba(101,174,112,.48);background:linear-gradient(180deg,rgba(28,48,34,.94),rgba(10,18,13,.98))}
.rr88-pdf-card.gloom .rr97-pdf-cta{border-color:rgba(157,104,200,.50);background:linear-gradient(180deg,rgba(43,30,55,.95),rgba(17,11,23,.98))}
.rr97-pdf-cta:hover{transform:translateY(-2px);box-shadow:0 17px 34px rgba(0,0,0,.34),inset 0 1px rgba(255,255,255,.06)}
.rr88-pdf-card.thorn .rr97-pdf-cta:hover{border-color:rgba(116,204,132,.76);background:linear-gradient(180deg,rgba(34,61,42,.97),rgba(11,22,15,.99))}
.rr88-pdf-card.gloom .rr97-pdf-cta:hover{border-color:rgba(183,125,225,.78);background:linear-gradient(180deg,rgba(55,37,69,.97),rgba(21,13,29,.99))}
.rr97-pdf-cta:focus-visible{outline:2px solid #e1c36d;outline-offset:3px}
.rr97-pdf-cta:active{transform:translateY(0)}
.rr97-pdf-cta:disabled{opacity:.55;cursor:wait;transform:none;box-shadow:none}
.rr97-pdf-arrow{display:grid;place-items:center;width:26px;height:26px;border-left:1px solid rgba(255,255,255,.11);padding-left:10px;font-family:Georgia,serif;font-size:1.1rem;font-weight:400;line-height:1;color:#d9c681;transition:transform .18s ease}
.rr97-pdf-cta:hover .rr97-pdf-arrow{transform:translateX(2px)}


@media(max-width:1000px){
  .rr88-spread-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
  .rr88-pdf-grid{grid-template-columns:1fr}
  .rr88-faction-tabs{flex-wrap:wrap;gap:16px}
  .rr88-browser-toolbar{align-items:flex-start}
}
@media(max-width:760px){
  .rr88-browser-toolbar{flex-direction:column;gap:20px}
  .rr88-faction-tabs{width:100%;display:grid;grid-template-columns:1fr 1fr}
  .rr88-faction-tab{min-width:0;grid-template-columns:42px auto;gap:8px}.rr88-faction-tab img{width:42px;height:56px}.rr88-faction-tab small{font-size:.62rem}
  .rr88-view-tabs{width:100%;justify-content:center}
  .rr96-stack-focus{height:460px}.rr88-stack-view .play69-stack{width:390px;height:440px}.rr88-stack-card{width:275px!important}
  .rr96-stack-arrow{width:48px;height:48px}.rr96-stack-arrow.prev{left:0}.rr96-stack-arrow.next{right:0}
  .rr88-spread-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .rr88-pdf-card{grid-template-columns:115px 1fr;gap:16px}.rr88-pdf-options{align-items:flex-start;flex-direction:column}
}
@media(max-width:480px){
  .rr88-faction-tabs{grid-template-columns:1fr}.rr88-faction-tab small{display:none}
  .rr96-stack-focus{height:400px}.rr88-stack-view .play69-stack{width:310px;height:385px}.rr88-stack-card{width:235px!important}
  .rr96-stack-arrow{width:42px;height:42px}.rr96-stack-arrow span{font-size:1.8rem}
  .rr88-stack-copy h3{font-size:1.8rem}.rr88-spread-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}


/* RR v1.0.105 — 6-card Preview Booster Lab */
.rr100-booster-section{background:radial-gradient(circle at 50% 10%,rgba(217,180,93,.06),transparent 34rem),#090d11;border-top:1px solid rgba(255,255,255,.06)}
.rr100-booster-note{display:grid;gap:3px;text-align:right;font-family:var(--font-smallcaps)}
.rr100-booster-note strong{font-size:.72rem;letter-spacing:.08em;color:var(--gold)}
.rr100-booster-note span{font-size:.7rem;color:#7f8a92}
.rr100-booster-toolbar{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:12px 0 28px}
.rr100-booster-toolbar button{border:0;border-bottom:2px solid transparent;background:transparent;color:#87939b;padding:9px 14px;font-family:var(--font-smallcaps);font-size:.76rem;font-weight:900;letter-spacing:.055em;cursor:pointer}
.rr100-booster-toolbar button:hover,.rr100-booster-toolbar button.active{color:#f0e1b7;border-bottom-color:var(--gold)}
.rr100-booster-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;align-items:end;max-width:1180px;margin:0 auto 24px}
.rr100-booster-card{display:grid;gap:8px;padding:0;border:0;background:transparent;color:#dce3e7;text-align:left;cursor:pointer;min-width:0}
.rr100-booster-card img,.rr100-booster-card>.image-protect-wrap{width:100%;aspect-ratio:600/840;border-radius:9px;box-shadow:0 16px 30px rgba(0,0,0,.42);transition:transform .18s ease,box-shadow .18s ease}
.rr100-booster-card:hover img,.rr100-booster-card:hover>.image-protect-wrap{transform:translateY(-7px);box-shadow:0 24px 38px rgba(0,0,0,.5)}
.rr100-booster-card span{display:grid;grid-template-columns:auto 1fr;gap:7px;align-items:center;font-size:.68rem;min-width:0}
.rr100-booster-card span b{display:grid;place-items:center;width:20px;height:20px;border:1px solid rgba(217,180,93,.28);border-radius:50%;font-family:var(--font-stats);color:var(--gold)}
.rr100-booster-card span em{font-style:normal;color:#7f8a92;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rr100-booster-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:4px 0 18px}
.rr100-booster-actions .rr97-pdf-cta{margin:0}
@media(max-width:980px){.rr100-booster-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:720px}.rr100-booster-note{text-align:left}}
@media(max-width:560px){.rr100-booster-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.rr100-booster-actions>*{width:100%;justify-content:center}}


/* RR v1.0.105 — deterministic global Monthly Preview Booster */
.rr101-monthly-booster .play69-section-head{align-items:end}
.rr101-booster-calendar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:720px;margin:10px auto 30px;border-top:1px solid rgba(217,180,93,.22);border-bottom:1px solid rgba(217,180,93,.14)}
.rr101-booster-calendar>div{display:grid;gap:5px;padding:16px 22px;text-align:center}
.rr101-booster-calendar>div+div{border-left:1px solid rgba(217,180,93,.14)}
.rr101-booster-calendar span{font-family:var(--font-smallcaps);font-size:.66rem;font-weight:850;letter-spacing:.085em;text-transform:uppercase;color:#74818a}
.rr101-booster-calendar strong{font-family:var(--font-display);font-size:1.2rem;font-weight:700;color:#eee3c8}
.rr101-open-booster{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;padding:0 22px;border:1px solid rgba(217,180,93,.38);background:linear-gradient(180deg,rgba(217,180,93,.11),rgba(217,180,93,.035));color:#efe2bc;font-family:var(--font-smallcaps);font-size:.78rem;font-weight:900;letter-spacing:.055em;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease}
.rr101-open-booster:hover{transform:translateY(-2px);border-color:rgba(217,180,93,.68);background:linear-gradient(180deg,rgba(217,180,93,.17),rgba(217,180,93,.05))}
.rr101-open-booster span{color:var(--gold);font-size:1.15rem}
.rr101-booster-grid:empty{display:none}
.rr101-booster-grid .rr100-booster-card{animation:rr101BoosterReveal .42s cubic-bezier(.2,.75,.25,1) both;animation-delay:calc(var(--rr101-i) * 75ms)}
@keyframes rr101BoosterReveal{from{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:none}}
@media(max-width:560px){.rr101-booster-calendar{grid-template-columns:1fr}.rr101-booster-calendar>div+div{border-left:0;border-top:1px solid rgba(217,180,93,.14)}.rr101-open-booster{width:100%}}
