/* The free scan: proof row, the scan theater, the results. */

.px .sc-proof { display: flex; gap: 28px; margin-top: 34px; flex-wrap: wrap; }
.px .sc-proof div { padding-left: 16px; border-left: 1px solid var(--line2); }
.px .sc-proof b { display: block; font: 800 32px/1 "Inter Tight", sans-serif; letter-spacing: -.02em; }
.px .sc-proof span { display: block; margin-top: 6px; font-size: 13px; color: var(--dim); max-width: 140px; }

/* ---------------------------------------------------------------- theater */
.st { position: fixed; inset: 0; z-index: 200; background: #020304; color: #f5f5f7; overflow: hidden;
  font: 400 15px/1.4 Inter, system-ui, sans-serif; }
.st > * { transition: opacity .6s; }
.st:not(.on) > * { opacity: 0; }
.st[hidden] { display: none; }
.st-bg { position: absolute; inset: 0; width: 100%; height: 100%; }
.st::after { content: ""; position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(120% 90% at 50% 50%, transparent 55%, rgba(0, 0, 0, .75)),
              repeating-linear-gradient(0deg, rgba(255, 255, 255, .018) 0 1px, transparent 1px 3px); }

.st-top { position: absolute; z-index: 3; left: 0; right: 0; top: 0; display: flex; justify-content: space-between; align-items: center;
  padding: 22px clamp(18px, 4vw, 44px); font: 600 13px/1 "JetBrains Mono", ui-monospace, monospace; letter-spacing: .06em; color: #a9a9b0; text-transform: uppercase; }
.st-top b { color: #fff; font-weight: 700; }
.st-dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: #ff453a; margin-right: 10px; box-shadow: 0 0 12px #ff453a; animation: st-blink 1s infinite; vertical-align: 1px; }
@keyframes st-blink { 50% { opacity: .25; } }

.st-stage { position: absolute; z-index: 2; inset: 70px clamp(14px, 3vw, 40px) 70px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, 1.1fr) minmax(0, 1fr); gap: clamp(14px, 2.5vw, 34px); align-items: center; }

/* left: the stream of sites, tilted into depth */
.st-stream { position: relative; height: 100%; perspective: 900px; overflow: hidden;
  mask-image: linear-gradient(180deg, transparent, #000 14%, #000 86%, transparent); -webkit-mask-image: linear-gradient(180deg, transparent, #000 14%, #000 86%, transparent); }
.st-stream .lane { position: absolute; left: 0; right: 0; top: 0; transform-style: preserve-3d; transform: rotateY(14deg); transform-origin: 100% 50%; will-change: transform; }
.st-site { position: relative; display: grid; grid-template-columns: 34px 1fr auto; gap: 12px; align-items: center; height: 58px; margin-bottom: 10px; padding: 0 14px;
  border-radius: 14px; background: rgba(255, 255, 255, .035); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .06); overflow: hidden;
  transition: background .4s, box-shadow .4s, transform .4s; }
.st-site .fav { width: 34px; height: 34px; border-radius: 10px; display: grid; place-items: center; font: 800 15px/1 "Inter Tight"; background: rgba(255, 255, 255, .07); color: #d6d6db; }
.st-site .nm { min-width: 0; }
.st-site .nm b { display: block; font: 650 14px/1.2 Inter; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.st-site .nm small { display: block; font: 500 11.5px/1.2 "JetBrains Mono", monospace; color: #7d7d85; margin-top: 3px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.st-site .pill { font: 800 10.5px/1 Inter; letter-spacing: .08em; text-transform: uppercase; padding: 7px 9px; border-radius: 8px; white-space: nowrap; color: #8e8e96; background: rgba(255, 255, 255, .05); }
.st-site.checking::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, transparent, rgba(127, 216, 255, .16), transparent); transform: translateX(-100%); animation: st-sweep 1.1s infinite; }
@keyframes st-sweep { to { transform: translateX(100%); } }
.st-site.found { background: rgba(255, 69, 58, .1); box-shadow: inset 0 0 0 1px rgba(255, 69, 58, .45), 0 0 30px rgba(255, 69, 58, .15); }
.st-site.found .pill { background: #ff453a; color: #fff; }
.st-site.found .fav { background: rgba(255, 69, 58, .22); color: #ff8a82; }
.st-site.possible { background: rgba(255, 159, 10, .08); box-shadow: inset 0 0 0 1px rgba(255, 159, 10, .4); }
.st-site.possible .pill { background: #ff9f0a; color: #1a0e00; }
.st-site.unverified { background: rgba(255, 179, 64, .06); box-shadow: inset 0 0 0 1px rgba(255, 179, 64, .28); }
.st-site.unverified .pill { background: rgba(255, 179, 64, .2); color: #ffc46b; }
.st-site.clear { opacity: .55; }
.st-site.clear .pill { color: #49d6a1; background: rgba(0, 214, 143, .1); }
.st-site.flash { transform: translateX(8px) scale(1.02); }

/* centre: the identity being assembled */
.st-core { position: relative; display: grid; place-items: center; height: 100%; }
.st-rings { position: absolute; width: min(92%, 520px); aspect-ratio: 1; pointer-events: none; }
.st-rings i { position: absolute; inset: 0; border-radius: 50%; border: 1px solid rgba(127, 216, 255, .16); }
.st-rings i:nth-child(1) { border-top-color: rgba(127, 216, 255, .7); border-right-color: rgba(127, 216, 255, .35); animation: st-spin 3.2s linear infinite; }
.st-rings i:nth-child(2) { inset: 9%; border-color: rgba(180, 124, 255, .14); border-bottom-color: rgba(180, 124, 255, .7); animation: st-spin 5s linear infinite reverse; }
.st-rings i:nth-child(3) { inset: 19%; border-style: dashed; border-color: rgba(255, 255, 255, .09); animation: st-spin 24s linear infinite; }
@keyframes st-spin { to { transform: rotate(360deg); } }
.st-id { position: relative; width: min(100%, 360px); padding: 26px 24px 18px; border-radius: 24px; background: rgba(12, 14, 18, .74);
  backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .1), 0 30px 100px rgba(0, 0, 0, .6); }
.st-id small { font: 700 11px/1 "JetBrains Mono", monospace; letter-spacing: .14em; text-transform: uppercase; color: #7fd8ff; }
.st-id > b { display: block; margin-top: 12px; font: 800 clamp(26px, 3vw, 34px)/1.05 "Inter Tight"; letter-spacing: -.02em; }
.st-id > span { display: block; margin-top: 6px; color: #a9a9b0; }
.st-id ul { list-style: none; margin: 18px 0 0; padding: 0; display: grid; gap: 8px; }
.st-id li { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 11px 12px; border-radius: 12px; background: rgba(255, 255, 255, .04);
  font-size: 14px; transition: background .4s, box-shadow .4s; }
.st-id li em { font: 700 11.5px/1 "JetBrains Mono", monospace; font-style: normal; color: #7d7d85; white-space: nowrap; }
.st-id li.hot { background: rgba(255, 69, 58, .12); box-shadow: inset 0 0 0 1px rgba(255, 69, 58, .4); }
.st-id li.hot em { color: #ff8a82; }
.st-id li.warm { background: rgba(255, 179, 64, .08); box-shadow: inset 0 0 0 1px rgba(255, 179, 64, .3); }
.st-id li.warm em { color: #ffc46b; }

/* right: counters and log */
.st-side { display: grid; gap: 16px; align-content: center; height: 100%; }
.st-counts { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.st-counts .c { padding: 16px; border-radius: 16px; background: rgba(255, 255, 255, .035); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .06); }
.st-counts b { display: block; font: 800 40px/1 "Inter Tight"; letter-spacing: -.03em; font-variant-numeric: tabular-nums; }
.st-counts span { display: block; margin-top: 6px; font-size: 12.5px; color: #9a9aa1; }
.st-counts .found b { color: #ff5a52; } .st-counts .poss b { color: #ff9f0a; } .st-counts .unv b { color: #ffc46b; } .st-counts .clear b { color: #49d6a1; }
.st-log { height: 210px; overflow: hidden; padding: 14px; border-radius: 16px; background: rgba(0, 0, 0, .45); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .06);
  font: 500 12px/1.65 "JetBrains Mono", ui-monospace, monospace; color: #8e8e96; display: flex; flex-direction: column; justify-content: flex-end;
  mask-image: linear-gradient(180deg, transparent, #000 40%); -webkit-mask-image: linear-gradient(180deg, transparent, #000 40%); }
.st-log p { flex: none; margin: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.st-log .r { color: #ff7a72; } .st-log .a { color: #ffc46b; } .st-log .g { color: #49d6a1; } .st-log .w { color: #e6e6ea; }

/* phase 2: the wall of registered brokers */
.st-wall { position: absolute; z-index: 4; inset: 70px clamp(14px, 3vw, 40px) 70px; display: grid; grid-template-rows: auto 1fr; gap: 20px; opacity: 0; transition: opacity .6s; }
.st-wall.on { opacity: 1; }
.st-wall-head { text-align: center; }
.st-wall-head b { display: block; font: 800 clamp(64px, 10vw, 130px)/1 "Inter Tight"; letter-spacing: -.04em; background: linear-gradient(100deg, #fff, #d9b8ff 50%, #8ec5ff); -webkit-background-clip: text; background-clip: text; color: transparent; font-variant-numeric: tabular-nums; }
.st-wall-head span { display: block; margin: 8px auto 0; max-width: 560px; color: #c9c9ce; font-size: clamp(15px, 1.6vw, 19px); }
.st-wall-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 6px; align-content: start; overflow: hidden;
  mask-image: linear-gradient(180deg, #000 60%, transparent); -webkit-mask-image: linear-gradient(180deg, #000 60%, transparent); }
.st-wall-grid span { padding: 8px 10px; border-radius: 8px; background: rgba(180, 124, 255, .07); box-shadow: inset 0 0 0 1px rgba(180, 124, 255, .16);
  font: 600 11.5px/1.2 Inter; color: #cfc2e6; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; animation: st-pop .4s both; }
@keyframes st-pop { from { opacity: 0; transform: scale(.7); } }
.st.walling .st-stage { opacity: .08; filter: blur(6px); transition: opacity .6s, filter .6s; }

.st-bar { position: absolute; z-index: 3; left: clamp(18px, 4vw, 44px); right: clamp(18px, 4vw, 44px); bottom: 34px; height: 3px; border-radius: 3px; background: rgba(255, 255, 255, .08); overflow: hidden; }
.st-bar i { display: block; height: 100%; width: 0; background: linear-gradient(90deg, #7fd8ff, #b47cff); box-shadow: 0 0 16px #7fd8ff; transition: width .5s; }
.st-skip { position: absolute; z-index: 5; right: clamp(18px, 4vw, 44px); bottom: 48px; border: 0; background: rgba(255, 255, 255, .07); color: #c9c9ce; border-radius: 999px; padding: 9px 14px; font: 600 12.5px/1 Inter; cursor: pointer; opacity: 0; transition: opacity .4s; }
.st-skip.show { opacity: 1; }
.st-demo { position: absolute; z-index: 6; left: 50%; top: 18px; transform: translateX(-50%); background: #ffd60a; color: #000; font: 800 12px/1 Inter; letter-spacing: .1em; padding: 8px 12px; border-radius: 8px; }

@media (max-width: 980px) {
  .st-stage { grid-template-columns: 1fr; grid-template-rows: auto 1fr auto; inset: 60px 14px 64px; gap: 12px; }
  .st-core { order: -1; height: auto; padding: 8px 0; }
  .st-rings { display: none; }
  .st-id { width: 100%; padding: 18px; }
  .st-id ul { grid-template-columns: 1fr 1fr 1fr; }
  .st-id li { flex-direction: column; align-items: flex-start; gap: 6px; padding: 9px 10px; font-size: 13px; }
  .st-stream .lane { transform: none; }
  .st-site { height: 50px; margin-bottom: 8px; }
  .st-side { height: auto; }
  .st-counts { grid-template-columns: repeat(4, 1fr); gap: 6px; }
  .st-counts .c { padding: 10px; }
  .st-counts b { font-size: 26px; }
  .st-counts span { font-size: 10.5px; }
  .st-log { display: none; }
}

/* ---------------------------------------------------------------- results */
.px .rs-head { display: grid; grid-template-columns: auto 1fr; gap: 34px; align-items: center; margin-bottom: 34px; }
.px .rs-head h2 { margin: 14px 0 14px; font-size: clamp(32px, 4.6vw, 58px); }
.px .rs-ring { position: relative; width: 170px; height: 170px; }
.px .rs-ring svg { width: 100%; height: 100%; transform: rotate(-90deg); }
.px .rs-ring circle { fill: none; stroke-width: 10; stroke-linecap: round; }
.px .rs-ring .bg { stroke: rgba(255, 255, 255, .07); }
.px .rs-ring .fg { stroke: #ff5a52; stroke-dasharray: 327; stroke-dashoffset: 327; transition: stroke-dashoffset 1.6s cubic-bezier(.2, .7, .2, 1), stroke .4s; filter: drop-shadow(0 0 10px currentColor); }
.px .rs-ring > div { position: absolute; inset: 0; display: grid; place-content: center; text-align: center; }
.px .rs-ring b { font: 800 30px/1 "Inter Tight"; letter-spacing: -.02em; }
.px .rs-ring small { color: var(--dim); font-size: 12px; text-transform: uppercase; letter-spacing: .12em; margin-top: 6px; }
@media (max-width: 700px) { .px .rs-head { grid-template-columns: 1fr; text-align: center; justify-items: center; } }
.px .rs-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-bottom: 22px; }
.px .rs-stats div { padding: 18px; border-radius: 18px; background: var(--card); box-shadow: inset 0 0 0 1px var(--line); }
.px .rs-stats b { display: block; font: 800 38px/1 "Inter Tight"; letter-spacing: -.03em; }
.px .rs-stats span { display: block; color: var(--dim); font-size: 13px; margin-top: 6px; }
@media (max-width: 700px) { .px .rs-stats { grid-template-columns: 1fr 1fr; } }
.px .rs-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
@media (max-width: 980px) { .px .rs-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) { .px .rs-grid { grid-template-columns: 1fr; } }
.px .rs-site { padding: 16px; border-radius: 16px; background: var(--card); box-shadow: inset 0 0 0 1px var(--line); }
.px .rs-site .t { display: flex; justify-content: space-between; gap: 10px; align-items: center; }
.px .rs-site b { font: 650 15px/1.2 Inter; }
.px .rs-site small { display: block; color: var(--mute); font: 500 12px/1.2 "JetBrains Mono", monospace; margin-top: 4px; }
.px .rs-site .v { font: 800 10.5px/1 Inter; letter-spacing: .08em; text-transform: uppercase; padding: 7px 9px; border-radius: 8px; white-space: nowrap; }
.px .rs-site .chips { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 12px; }
.px .rs-site .chips span { font: 600 12px/1 Inter; padding: 6px 9px; border-radius: 8px; background: rgba(255, 69, 58, .12); color: #ff9d97; }
.px .rs-site .note { margin-top: 10px; font-size: 12.5px; color: var(--dim); }
.px .rs-site.found { box-shadow: inset 0 0 0 1px rgba(255, 69, 58, .45); background: linear-gradient(180deg, rgba(255, 69, 58, .08), var(--card)); }
.px .rs-site.found .v { background: #ff453a; color: #fff; }
.px .rs-site.possible { box-shadow: inset 0 0 0 1px rgba(255, 159, 10, .4); }
.px .rs-site.possible .v { background: #ff9f0a; color: #1a0e00; }
.px .rs-site.unverified { box-shadow: inset 0 0 0 1px rgba(255, 179, 64, .25); }
.px .rs-site.unverified .v { background: rgba(255, 179, 64, .18); color: #ffc46b; }
.px .rs-site.clear .v { background: rgba(0, 214, 143, .1); color: #49d6a1; }
.px .rs-site.clear { opacity: .7; }
.px .rs-site.checking .v { background: rgba(127, 216, 255, .12); color: #7fd8ff; }
.px .rs-brokers { display: grid; grid-template-columns: auto 1fr; gap: 28px; align-items: center; margin: 22px 0 46px; padding: 28px; border-radius: 22px;
  background: radial-gradient(70% 140% at 0% 50%, rgba(180, 124, 255, .16), transparent 70%), var(--card); box-shadow: inset 0 0 0 1px rgba(180, 124, 255, .3); }
.px .rs-brokers b { display: block; font: 800 64px/1 "Inter Tight"; letter-spacing: -.04em; }
.px .rs-brokers span { color: #c9a6ff; font-size: 13px; text-transform: uppercase; letter-spacing: .1em; font-weight: 700; }
.px .rs-brokers p { color: #d6d6db; }
@media (max-width: 700px) { .px .rs-brokers { grid-template-columns: 1fr; } }
.px .rs-offer { display: grid; grid-template-columns: 1.15fr 1fr; gap: 14px; }
@media (max-width: 800px) { .px .rs-offer { grid-template-columns: 1fr; } }
.px .rs-plan { position: relative; padding: 30px; border-radius: 26px; background: var(--card); box-shadow: inset 0 0 0 1px var(--line); display: flex; flex-direction: column; }
.px .rs-plan.main { background: linear-gradient(180deg, rgba(0, 214, 143, .1), var(--card) 70%); box-shadow: inset 0 0 0 1.5px rgba(0, 214, 143, .55); }
.px .rs-plan .badge { position: absolute; top: -12px; left: 30px; padding: 7px 12px; border-radius: 999px; background: var(--green); color: #00150d; font: 800 11px/1 Inter; letter-spacing: .08em; text-transform: uppercase; }
.px .rs-plan p { color: var(--dim); margin-top: 6px; }
.px .rs-plan .amt { margin: 20px 0 4px; font: 800 44px/1 "Inter Tight"; letter-spacing: -.03em; }
.px .rs-plan .amt small { font: 600 15px/1 Inter; color: var(--dim); }
.px .rs-plan .was { font-size: 14px; color: var(--mute); margin: 0 0 22px; }
.px .rs-plan .btn { margin-top: auto; }
.px .rs-foot { display: flex; gap: 20px; justify-content: space-between; align-items: center; margin-top: 46px; padding-top: 24px; border-top: 1px solid var(--line); }
@media (max-width: 700px) { .px .rs-foot { flex-direction: column; align-items: flex-start; } }

/* ------------------------------------------------------------ v2: modal, wording, hidden records */
.px .step { font: 700 12px/1 Inter, sans-serif; letter-spacing: .12em; text-transform: uppercase; color: #c9a6ff; margin: 0 0 14px; }

.px .modal { position: fixed; inset: 0; z-index: 150; display: grid; place-items: center; padding: 20px;
  background: rgba(2, 3, 4, .72); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); opacity: 0; transition: opacity .25s; }
.px .modal.on { opacity: 1; }
.px .modal[hidden] { display: none; }
.px .modal-card { width: min(440px, 100%); padding: 30px 26px 22px; border-radius: 28px; text-align: center; background: #0d0f12;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .12), 0 40px 120px rgba(0, 0, 0, .7), 0 0 80px rgba(180, 124, 255, .12);
  transform: translateY(14px) scale(.98); transition: transform .3s cubic-bezier(.2, .8, .2, 1); }
.px .modal.on .modal-card { transform: none; }
.px .modal-card h3 { font-size: 26px; margin: 4px 0 8px; }
.px .modal-card .lead-s { color: #b9b9c0; font-size: 15px; line-height: 1.5; margin: 0; }
.px .modal-card .lead-s b { color: #fff; }
.px .mail-ico { width: 58px; height: 58px; margin: 0 auto 14px; border-radius: 18px; display: grid; place-items: center; color: #c9a6ff;
  background: rgba(180, 124, 255, .12); box-shadow: inset 0 0 0 1px rgba(180, 124, 255, .3); }
.px .mail-ico svg { width: 28px; height: 28px; }

/* the "i" next to "matched your info" */
.px .itip { position: relative; display: inline-grid; place-items: center; width: 26px; height: 26px; margin-left: 10px; vertical-align: 6px; border-radius: 50%;
  border: 0; cursor: pointer; background: rgba(255, 255, 255, .1); color: #fff; font: 700 italic 15px/1 Georgia, serif; }
.px .itip-box { position: absolute; left: 50%; top: calc(100% + 10px); transform: translateX(-50%); width: min(300px, 80vw); padding: 14px 16px; border-radius: 14px;
  background: #1a1c20; box-shadow: 0 20px 60px rgba(0, 0, 0, .6), inset 0 0 0 1px rgba(255, 255, 255, .1); text-align: left;
  font: 500 14px/1.45 Inter, sans-serif; letter-spacing: 0; color: #d6d6db; opacity: 0; pointer-events: none; transition: opacity .2s; z-index: 5; }
.px .itip:hover .itip-box, .px .itip.open .itip-box, .px .itip:focus .itip-box { opacity: 1; }

/* theater: hidden records look like what they are */
@keyframes st-throb { 0%, 100% { box-shadow: inset 0 0 0 1px rgba(255, 80, 50, .5), 0 0 0 rgba(255, 60, 40, 0); } 50% { box-shadow: inset 0 0 0 1px rgba(255, 80, 50, .85), 0 0 26px rgba(255, 60, 40, .28); } }
.st-site.unverified { background: linear-gradient(90deg, rgba(120, 10, 10, .32), rgba(40, 6, 6, .2)); animation: st-throb 2.2s ease-in-out infinite; }
.st-site.unverified .pill { display: inline-flex; align-items: center; gap: 5px; background: rgba(255, 69, 58, .18); color: #ff8a6a; }
.st-site.unverified .pill svg, .st-site .pill svg { width: 11px; height: 11px; }
.st-site.unverified .fav { background: rgba(255, 69, 58, .16); color: #ff8a6a; }
.st-site.possible { background: rgba(255, 120, 30, .1); box-shadow: inset 0 0 0 1px rgba(255, 120, 30, .5); }
.st-site.possible .pill { background: #ff7a1a; color: #1a0800; }
.st-log .h { color: #ff7a5c; }
.st-counts .match b { color: #ff453a; text-shadow: 0 0 24px rgba(255, 69, 58, .45); }
.st-counts .hid b { color: #ff7a2f; }
.st-counts .found b { color: #ff8a82; }
.st-id li.warm { background: rgba(255, 90, 50, .1); box-shadow: inset 0 0 0 1px rgba(255, 90, 50, .35); }
.st-id li.warm em { color: #ff9a7a; }
.st-id ul { grid-template-columns: 1fr; }
@media (max-width: 980px) { .st-id ul { grid-template-columns: 1fr 1fr; } }

/* results */
.px .rs-head h2 { line-height: 1.08; }
.px .rs-stats .match { box-shadow: inset 0 0 0 1px rgba(255, 69, 58, .45); background: linear-gradient(180deg, rgba(255, 69, 58, .12), var(--card)); }
.px .rs-stats .hid { box-shadow: inset 0 0 0 1px rgba(255, 122, 47, .35); }
.px .rs-site .chips span.m { background: rgba(255, 69, 58, .14); color: #ff9d97; }
.px .rs-site .chips span.s { background: rgba(255, 255, 255, .07); color: #f0f0f2; box-shadow: inset 0 0 0 1px rgba(255, 69, 58, .35); }
.px .rs-site.possible { box-shadow: inset 0 0 0 1px rgba(255, 120, 30, .5); background: linear-gradient(180deg, rgba(255, 120, 30, .07), var(--card)); }
.px .rs-site.possible .v { background: #ff7a1a; color: #1a0800; }
.px .rs-site.unverified { background: linear-gradient(160deg, rgba(110, 10, 10, .35), var(--card) 70%); box-shadow: inset 0 0 0 1px rgba(255, 69, 58, .32); opacity: 1; }
.px .rs-site.unverified .v { display: inline-flex; align-items: center; gap: 5px; background: rgba(255, 69, 58, .16); color: #ff8a6a; }
.px .rs-site .v svg { width: 11px; height: 11px; }
.px .rs-site.unverified .note { color: #d8a49a; }
.px .rs-site.new { animation: rs-new 1.6s ease-out; }
@keyframes rs-new { 0% { transform: scale(.96); box-shadow: 0 0 0 2px #ff453a, 0 0 40px rgba(255, 69, 58, .5); } 100% { transform: none; } }
.px .rs-deep { margin: 0 0 16px; padding: 16px 18px; border-radius: 16px; background: rgba(127, 216, 255, .06); box-shadow: inset 0 0 0 1px rgba(127, 216, 255, .22); }
.px .rs-deep-top { display: flex; gap: 12px; align-items: center; }
.px .rs-deep p { margin: 0; color: #cfe9ff; font-size: 14.5px; }
.px .rs-deep .spin { flex: none; width: 18px; height: 18px; border-radius: 50%; border: 2px solid rgba(127, 216, 255, .25); border-top-color: #7fd8ff; animation: st-spin .9s linear infinite; }
.px .rs-deep-bar { height: 4px; margin-top: 12px; border-radius: 4px; background: rgba(255, 255, 255, .08); overflow: hidden; }
.px .rs-deep-bar i { display: block; height: 100%; width: 6%; background: linear-gradient(90deg, #7fd8ff, #b47cff); transition: width .6s; }

/* ------------------------------------------------------------ v3: results that sell, bars that follow */
.px .anchor { display: block; position: relative; top: -90px; visibility: hidden; }
.px #results { padding-top: 48px; }
.px .rs-sub { font-size: 22px; margin: 40px 0 14px; }
.px .rs-offer { margin: 18px 0 8px; }
.px .rs-offer-note { grid-column: 1 / -1; text-align: center; margin: 4px 0 0; }

/* the deep search: a slim line, not a block */
.px .rs-deep { display: grid; grid-template-columns: auto 1fr; gap: 6px 12px; align-items: center; margin: 0 0 6px; padding: 12px 16px; border-radius: 14px; }
.px .rs-deep p { margin: 0; font-size: 14px; color: #cfe9ff; }
.px .rs-deep .rs-deep-bar { grid-column: 1 / -1; margin-top: 4px; height: 3px; }

/* "see it yourself" */
.px .rs-site .out { display: inline-flex; margin-top: 14px; font: 650 13.5px/1 Inter; color: #fff; text-decoration: none; padding: 9px 12px; border-radius: 999px;
  background: rgba(255, 69, 58, .16); box-shadow: inset 0 0 0 1px rgba(255, 69, 58, .4); transition: background .2s; }
.px .rs-site .out:hover { background: rgba(255, 69, 58, .28); }

/* hidden records: one block, every site a door */
.px .rs-hidden { margin-top: 26px; padding: 24px; border-radius: 22px; background: linear-gradient(160deg, rgba(110, 10, 10, .4), rgba(20, 8, 8, .6) 60%, var(--card));
  box-shadow: inset 0 0 0 1px rgba(255, 69, 58, .35); animation: rs-glow 3s ease-in-out infinite; }
@keyframes rs-glow { 50% { box-shadow: inset 0 0 0 1px rgba(255, 69, 58, .6), 0 0 50px rgba(255, 50, 30, .12); } }
.px .rs-hidden-head { display: flex; gap: 16px; align-items: flex-start; margin-bottom: 16px; }
.px .rs-hidden-head h3 { font-size: 22px; color: #ffb4a6; }
.px .rs-hidden-head p { color: #d8a49a; font-size: 14.5px; margin-top: 4px; max-width: 640px; }
.px .lockbig { flex: none; width: 44px; height: 44px; border-radius: 14px; background: rgba(255, 69, 58, .16) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff8a6a' stroke-width='2.2' stroke-linecap='round'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E") center/22px no-repeat; }
.px .rs-hidden-list { display: flex; flex-wrap: wrap; gap: 8px; }
.px .hpill { display: inline-flex; align-items: center; gap: 8px; padding: 9px 12px; border-radius: 12px; text-decoration: none; color: #fff;
  background: rgba(0, 0, 0, .35); box-shadow: inset 0 0 0 1px rgba(255, 69, 58, .3); font-size: 14px; transition: background .2s, box-shadow .2s; }
.px a.hpill:hover { background: rgba(255, 69, 58, .18); box-shadow: inset 0 0 0 1px rgba(255, 69, 58, .6); }
.px .hpill svg { width: 13px; height: 13px; color: #ff8a6a; }
.px .hpill b { font-weight: 650; }
.px .hpill em { font-style: normal; font-size: 12.5px; color: #ff9a7a; }
.px .rs-clear { margin: 16px 2px 0; color: var(--mute); font-size: 14px; }

/* the sticky buy bar */
.buybar { position: fixed; z-index: 90; left: 0; right: 0; bottom: 0; padding: 12px 16px calc(12px + env(safe-area-inset-bottom));
  background: rgba(8, 9, 11, .82); backdrop-filter: saturate(160%) blur(20px); -webkit-backdrop-filter: saturate(160%) blur(20px);
  border-top: 1px solid rgba(255, 69, 58, .35); animation: bar-in .4s cubic-bezier(.2, .8, .2, 1); }
.buybar[hidden] { display: none !important; }
@keyframes bar-in { from { transform: translateY(100%); } }
.buybar-in { max-width: 1140px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.buybar p { margin: 0; min-width: 0; }
.buybar b { display: block; font: 800 17px/1.2 "Inter Tight", Inter, sans-serif; color: #ff6a5c; }
.buybar span { display: block; font-size: 13px; color: #a9a9b0; margin-top: 2px; }
.buybar .btn { flex: none; }
body.has-bar .xfoot { padding-bottom: 110px; }
@media (max-width: 520px) { .buybar span { display: none; } .buybar b { font-size: 15px; } .buybar .btn { padding: 13px 16px; font-size: 14.5px; } }

/* the floating "Get my free scan" */
.scanfab { position: fixed; z-index: 90; left: 50%; bottom: calc(18px + env(safe-area-inset-bottom)); transform: translateX(-50%); padding: 16px 26px; border-radius: 999px;
  background: #00d68f; color: #00150d; font: 750 16px/1 Inter, sans-serif; text-decoration: none; white-space: nowrap;
  box-shadow: 0 16px 50px rgba(0, 214, 143, .4), 0 0 0 6px rgba(0, 214, 143, .12); animation: fab-in .35s cubic-bezier(.2, .8, .2, 1); }
.scanfab[hidden] { display: none !important; }
@keyframes fab-in { from { transform: translate(-50%, 140%); } }

/* ------------------------------------------------------------ free removal: running card and the "starting" sequence */
.px .rs-active { margin: 18px 0 8px; padding: 24px; border-radius: 24px; background: linear-gradient(160deg, rgba(0, 214, 143, .12), var(--card) 60%);
  box-shadow: inset 0 0 0 1.5px rgba(0, 214, 143, .45); }
.px .ra-head { display: flex; gap: 16px; align-items: flex-start; }
.px .ra-head h3 { font-size: 22px; }
.px .ra-head p { color: var(--dim); margin-top: 4px; font-size: 15px; max-width: 620px; }
.px .ra-head .btn { margin-left: auto; flex: none; }
.px .ra-pulse { flex: none; width: 14px; height: 14px; margin-top: 7px; border-radius: 50%; background: #00d68f; box-shadow: 0 0 0 0 rgba(0, 214, 143, .6); animation: ra-ping 1.8s infinite; }
@keyframes ra-ping { 70% { box-shadow: 0 0 0 14px rgba(0, 214, 143, 0); } 100% { box-shadow: 0 0 0 0 rgba(0, 214, 143, 0); } }
.px .ra-rows { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 20px; }
.px .ra-rows > div { display: grid; grid-template-columns: 1fr auto; gap: 8px 12px; align-items: center; padding: 14px 16px; border-radius: 16px; background: rgba(0, 0, 0, .25); }
.px .ra-rows span { color: #c9c9ce; font-size: 14px; }
.px .ra-rows b { font: 700 15px/1 Inter; color: #9ff0cf; font-variant-numeric: tabular-nums; }
.px .ra-bar { grid-column: 1 / -1; display: block; height: 5px; border-radius: 5px; background: rgba(255, 255, 255, .08); overflow: hidden; }
.px .ra-bar i { display: block; height: 100%; width: 0; background: linear-gradient(90deg, #00d68f, #7fd8ff); transition: width .8s; }
.px #raNext { margin-top: 12px; }
@media (max-width: 700px) { .px .ra-rows { grid-template-columns: 1fr; } .px .ra-head { flex-wrap: wrap; } .px .ra-head .btn { margin-left: 0; width: 100%; } }

.px .so-card { width: min(520px, 100%); text-align: left; }
.px .so-card h3 { font-size: 28px; }
.px .so-steps { list-style: none; padding: 0; margin: 22px 0 6px; display: grid; gap: 12px; }
.px .so-step { display: flex; gap: 14px; align-items: center; color: #6b6b72; font-size: 15.5px; transition: color .3s; }
.px .so-step i { flex: none; width: 26px; height: 26px; border-radius: 50%; box-shadow: inset 0 0 0 2px #2a2d33; position: relative; transition: background .3s, box-shadow .3s; }
.px .so-step.run { color: #fff; }
.px .so-step.run i { box-shadow: inset 0 0 0 2px rgba(0, 214, 143, .3); border-top: 2px solid #00d68f; animation: st-spin .8s linear infinite; }
.px .so-step.done { color: #d6d6db; }
.px .so-step.done i { background: #00d68f url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23001a10' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12l4 4 8-8'/%3E%3C/svg%3E") center/14px no-repeat; box-shadow: 0 0 18px rgba(0, 214, 143, .45); }
.px .so-step b { color: #9ff0cf; font-variant-numeric: tabular-nums; }
