.referral-journey{width:min(1250px,calc(100% - 72px));margin:8px auto 20px;display:grid;grid-template-columns:minmax(240px,280px) minmax(0,1fr);align-items:start;gap:20px}.referral-journey__steps{display:grid;grid-template-columns:minmax(0,1fr);gap:0;margin:0;padding:0;list-style:none}.journey-step{position:relative;min-width:0;color:var(--color-porcelain)}.journey-step:not(:last-child):after{content:"";position:absolute;top:calc(50% - 8px);bottom:calc(-50% + 8px);left:16px;width:1px;background:var(--color-steel-support);pointer-events:none}.journey-step__progress{position:absolute;top:calc(50% - 8px);bottom:calc(-50% + 8px);left:15px;z-index:1;width:3px;background:var(--color-patina);transform:scaleY(var(--journey-fill, 0));transform-origin:top;pointer-events:none}.journey-step button{position:relative;z-index:1;width:100%;min-height:76px;padding:6px 6px 6px 2px;display:grid;grid-template-columns:30px 30px minmax(0,1fr);align-items:center;gap:9px;border:0;border-radius:2px;background:transparent;color:inherit;cursor:pointer;text-align:left}.journey-step button:focus-visible{outline:2px solid var(--color-patina);outline-offset:-2px}.journey-step__marker{width:28px;height:28px;display:grid;place-items:center;border:1px solid var(--color-steel-support);border-radius:50%;background:var(--color-iron-fabric);color:var(--color-graphite);transform:translateY(-8px)}.journey-step__marker svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;opacity:0}.journey-step[data-state=complete] .journey-step__marker,.journey-step[data-state=current] .journey-step__marker{border-color:var(--color-patina);background:var(--color-patina)}.journey-step[data-state=complete] .journey-step__marker svg,.journey-step[data-state=current] .journey-step__marker svg{opacity:1}.journey-step__icon{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transform:translateY(-8px)}.journey-step button>div{min-width:0;display:flex;flex-direction:column;gap:3px}.journey-step strong{font:400 17px/1.2 PP Neue Montreal,PP Neue Montreal Fallback,PP Neue Montreal Fallback Android,sans-serif}.journey-step small{visibility:hidden;color:var(--color-steel-support);font:var(--font-mono-weight) 11px/1.25 var(--font-mono);letter-spacing:var(--font-mono-tracking);text-transform:var(--font-mono-transform)}.journey-step[data-state=complete] small{visibility:visible}.outcome{min-width:0;overflow:hidden;border-radius:8px;background:var(--color-porcelain);color:var(--color-graphite)}.outcome .outcome__header{display:flex;align-items:center;gap:10px;min-height:38px;margin:0;padding:9px 20px;background:var(--color-steel-support);color:var(--color-porcelain);font:var(--font-mono-weight) 11px/18px var(--font-mono);letter-spacing:var(--font-mono-tracking);text-transform:var(--font-mono-transform)}.outcome .outcome__header[data-paid=true]{background:var(--color-patina);color:var(--color-graphite)}.outcome .outcome__header[data-validated=true]{background:var(--color-copper);color:var(--color-graphite)}.outcome__stage-icon{width:15px;height:15px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.journey-screens{display:grid;grid-template-columns:minmax(0,1fr)}.journey-screen{min-width:0;padding:16px 20px 18px;display:grid;align-content:start;gap:10px;background:var(--color-porcelain);color:var(--color-graphite)}.feature-rail[data-enhanced] .journey-screen{grid-area:1 / 1}.feature-rail[data-enhanced] .journey-screen:not(:first-child){visibility:hidden;opacity:0}.feature-rail[data-enhanced] .journey-screen [data-journey-reveal][data-state=pending],.feature-rail[data-enhanced] .journey-screen [data-attribution-reveal][data-state=pending]{visibility:hidden}.journey-screen__summary{min-width:0;min-height:80px;display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:10px 12px}.journey-screen__summary--status{grid-template-columns:48px minmax(0,1fr) 36px}.journey-screen__stage-status{width:36px;height:36px;display:grid;place-items:center}.journey-screen__stage-status>*{grid-area:1 / 1}.journey-screen__completion{width:36px;height:36px;border:1.5px solid var(--color-steel-support);border-radius:3px;fill:none;stroke:var(--color-graphite);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.journey-screen__stage-status[data-state=pending] .journey-screen__completion path{opacity:0}.journey-screen__stage-status--verification[data-state=pending] .journey-screen__completion{visibility:hidden}.journey-screen__stage-status[data-state=complete] .journey-screen__completion{background:var(--color-patina);border-color:var(--color-patina)}.journey-screen__spinner{width:34px;height:34px;border:3px solid color-mix(in srgb,var(--color-steel-support) 30%,transparent);border-top-color:var(--color-graphite);border-radius:50%;animation:verification-spin .8s linear infinite}.journey-screen__spinner[data-complete=true]{visibility:hidden;animation-play-state:paused}.journey-screen[data-state=inactive] .journey-screen__spinner{animation-play-state:paused}@keyframes verification-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.journey-screen__spinner{animation:none}}.journey-screen__icon{width:48px;height:48px;display:grid;place-items:center;border-radius:2px;background:#dce4e8}.journey-screen__icon svg{width:32px;height:32px;fill:none;stroke:var(--color-graphite);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.journey-screen__heading{margin:0;font:400 clamp(22px,2.3vw,28px)/1.1 "PP Neue Montreal","PP Neue Montreal Fallback","PP Neue Montreal Fallback Android",sans-serif}.journey-screen__muted{margin:0;color:var(--color-slate-ink);font:400 13px/1.4 PP Neue Montreal,PP Neue Montreal Fallback,PP Neue Montreal Fallback Android,sans-serif}.journey-screen__summary .journey-screen__muted{grid-column:2}.journey-screen__summary>div{min-width:0}.journey-screen__section-label{margin:0;color:var(--color-slate-ink);font:var(--font-mono-weight) 10px/1.3 var(--font-mono);letter-spacing:var(--font-mono-tracking);text-transform:var(--font-mono-transform)}.journey-screen__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;border-top:1px solid var(--color-mist-line);border-left:1px solid var(--color-mist-line)}.journey-screen[data-journey-screen="0"] .journey-screen__fields{grid-template-columns:repeat(3,minmax(0,1fr))}.journey-screen[data-journey-screen="1"] .journey-screen__fields{grid-template-columns:repeat(4,minmax(0,1fr))}.journey-screen[data-journey-screen="3"] .journey-screen__fields{grid-template-columns:repeat(5,minmax(0,1fr))}.journey-screen__fields>div{min-width:0;padding:9px 11px;border-right:1px solid var(--color-mist-line);border-bottom:1px solid var(--color-mist-line)}.journey-screen__fields dt{color:var(--color-slate-ink);font:var(--font-mono-weight) 10px/1.25 var(--font-mono);letter-spacing:var(--font-mono-tracking);text-transform:var(--font-mono-transform)}.journey-screen__fields dd{min-width:0;margin:4px 0 0;overflow-wrap:anywhere;font:500 13px/1.3 PP Neue Montreal,PP Neue Montreal Fallback,PP Neue Montreal Fallback Android,sans-serif}.journey-screen__platform{display:flex;align-items:center;gap:5px}[data-attribution-value][hidden],[data-attribution-pending][hidden]{display:none}[data-attribution-pending]{color:var(--color-slate-ink)}.journey-screen__platform svg{width:15px;height:15px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.journey-screen__paypal{display:block;width:64px;height:auto;max-height:24px;margin-top:6px;object-fit:contain}.journey-screen__rows{display:grid;margin:0;padding:0;list-style:none;border-top:1px solid var(--color-mist-line)}.journey-screen__row{min-width:0;min-height:44px;padding:5px 0;display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:8px;border-bottom:1px solid var(--color-mist-line)}.journey-screen__check{width:18px;height:18px;display:grid;place-items:center;border-radius:50%;background:var(--color-patina);color:var(--color-graphite);font:700 11px/1 PP Neue Montreal,PP Neue Montreal Fallback,PP Neue Montreal Fallback Android,sans-serif}.journey-screen__check svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}[data-qualification-reveal][data-state=pending] .journey-screen__check{background:transparent;color:var(--color-steel-support);box-shadow:inset 0 0 0 1px var(--color-steel-support)}[data-qualification-reveal][data-state=pending] :is(.journey-screen__detail,time){visibility:hidden}[data-qualification-reveal][data-state=pending] .qualification-check,[data-qualification-reveal][data-state=complete] .qualification-cross{display:none}.journey-screen__row-icon{width:24px;height:24px;display:grid;place-items:center;color:var(--color-steel-support);fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.journey-screen__row>div{min-width:0;font:500 13px/1.25 PP Neue Montreal,PP Neue Montreal Fallback,PP Neue Montreal Fallback Android,sans-serif}.journey-screen__row strong{font-weight:500}.journey-screen__row time{color:var(--color-slate-ink);text-align:right;white-space:nowrap;font:var(--font-mono-weight) 10px/1.2 var(--font-mono);letter-spacing:var(--font-mono-tracking);text-transform:var(--font-mono-transform)}.journey-screen__detail{display:block;margin-top:3px;color:var(--color-slate-ink);font:400 12px/1.3 PP Neue Montreal,PP Neue Montreal Fallback,PP Neue Montreal Fallback Android,sans-serif}.journey-screen__badge{width:fit-content;display:inline-flex;align-items:center;padding:5px 8px;border-radius:2px;background:var(--color-patina);color:var(--color-graphite);font:var(--font-mono-weight) 10px/1.2 var(--font-mono);letter-spacing:var(--font-mono-tracking);text-transform:var(--font-mono-transform)}.journey-screen__badge[data-verification-check]{min-width:74px;justify-content:center;gap:5px}.journey-screen__badge[data-verification-check][data-state=complete]:before{content:"✓"}.journey-screen__badge[data-verification-check][data-state=pending]{background:color-mix(in srgb,var(--color-steel-support) 20%,var(--color-porcelain))}.journey-screen__badge[data-payout-status][data-state=pending]{background:color-mix(in srgb,var(--color-steel-support) 20%,var(--color-porcelain));color:var(--color-graphite)}.payout-rail{min-width:0;max-width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:var(--color-steel-support) transparent}.payout-rail:focus-visible{outline:2px solid var(--color-patina);outline-offset:-2px}.payout-rail__steps{position:relative;width:100%;min-width:680px;margin:0;padding:0 0 4px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));list-style:none}.payout-rail__steps:before{content:"";position:absolute;top:88px;left:10%;right:10%;height:1px;background:var(--color-steel-support)}.payout-rail__step{position:relative;min-width:0;display:grid;grid-template-rows:75px 26px 75px;justify-items:center;text-align:center}.payout-rail__marker{grid-row:2;width:20px;height:20px;align-self:center;display:grid;place-items:center;border:1px solid var(--color-steel-support);border-radius:50%;background:var(--color-porcelain);color:var(--color-graphite)}.payout-rail__marker svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;opacity:0}.payout-rail__step[data-state=complete] .payout-rail__marker{border-color:var(--color-patina);background:var(--color-patina)}.payout-rail__step[data-state=complete] .payout-rail__marker svg{opacity:1}.payout-rail__copy{grid-row:1;min-width:0;max-width:145px;padding:0 4px 7px;align-self:end;font:500 13px/1.2 PP Neue Montreal,PP Neue Montreal Fallback,PP Neue Montreal Fallback Android,sans-serif}.payout-rail__step:nth-child(2n) .payout-rail__copy{grid-row:3;padding:7px 4px 0;align-self:start}.payout-rail__copy strong{display:block;font-weight:500}.payout-rail__copy .journey-screen__detail{margin-top:3px}.payout-rail__copy time{display:block;margin-top:4px;color:var(--color-slate-ink);white-space:nowrap;font:var(--font-mono-weight) 10px/1.2 var(--font-mono);letter-spacing:var(--font-mono-tracking);text-transform:var(--font-mono-transform)}.payout-rail__step[data-state=pending] .payout-rail__copy time{visibility:hidden}.payout-rail__step[data-state=pending] .payout-rail__copy strong{color:var(--color-steel-support)}.payout-rail__step[data-state=pending] .payout-rail__copy .journey-screen__detail{visibility:hidden}@media(max-width:899px){.referral-journey{grid-template-columns:minmax(0,1fr)}}@media(max-width:700px){.referral-journey{width:calc(100% - 32px);margin:8px auto 16px;gap:16px}.outcome .outcome__header{padding-inline:14px}.journey-screen{padding:16px 14px 18px}.journey-screen__heading{font-size:23px}.journey-screen[data-journey-screen="0"] .journey-screen__fields,.journey-screen[data-journey-screen="1"] .journey-screen__fields,.journey-screen[data-journey-screen="3"] .journey-screen__fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:768px){.journey-screen__muted,.journey-screen__fields dd,.journey-screen__row>div,.journey-screen__detail{font-size:var(--text-body-sm)}.journey-screen__section-label,.journey-screen__fields dt,.journey-screen__row time,.journey-screen__badge{font-size:var(--text-mono-md)}.payout-rail{overflow-x:visible}.payout-rail__steps{min-width:0;grid-template-columns:minmax(0,1fr);gap:14px}.payout-rail__steps:before{display:none}.payout-rail__step:not(:last-child):before{content:"";position:absolute;top:20px;bottom:-14px;left:10px;width:1px;background:var(--color-steel-support)}.payout-rail__step{grid-template-rows:none;grid-template-columns:20px minmax(0,1fr);column-gap:12px;justify-items:start;text-align:left}.payout-rail__marker{position:relative;z-index:1;grid-row:1;align-self:start}.payout-rail__copy,.payout-rail__step:nth-child(2n) .payout-rail__copy{grid-row:1;max-width:none;padding:0;align-self:start;font-size:var(--text-body-sm)}.payout-rail__copy time{font-size:var(--text-mono-md)}}@media(max-width:480px){.journey-step button{min-height:55px}.journey-screen__row{grid-template-columns:24px minmax(0,1fr)}.journey-screen__row time{grid-column:2;text-align:left}.journey-screen__row>.journey-screen__badge{grid-column:2}.journey-screen__rows--checks .journey-screen__row{grid-template-columns:24px minmax(0,1fr) 74px}.journey-screen__rows--checks .journey-screen__row>.journey-screen__badge{grid-column:3}}@media(max-width:400px){.journey-screen[data-journey-screen="0"] .journey-screen__fields,.journey-screen[data-journey-screen="1"] .journey-screen__fields,.journey-screen[data-journey-screen="3"] .journey-screen__fields{grid-template-columns:minmax(0,1fr)}}
