/* Credit preparation shares Core tokens, with a scoped glass surface and legible controls. */
.vis-ui .credit-journey{--cj-edge:color-mix(in srgb,var(--vis-brand,#678fff) 17%,var(--vis-border,#d8dfea));--cj-glass:color-mix(in srgb,var(--vis-surface,#fff) 84%,transparent);max-width:850px;margin:0 auto;padding:18px 0 70px;color:var(--vis-ink,#17243d);font:400 15px/1.6 var(--vis-font,system-ui,sans-serif)}
.credit-journey *,.credit-journey *::before,.credit-journey *::after{box-sizing:border-box}
.credit-journey :is(button,input,textarea){font:inherit;-webkit-tap-highlight-color:transparent}
.credit-journey :is(button,a){touch-action:manipulation}
.credit-journey :is(h1,h2,p,dl,dd){margin:0}
.credit-journey button{cursor:pointer}.credit-journey button:disabled{cursor:wait}
.credit-journey .cj-icon{width:21px;height:21px;flex:none;display:block}
.credit-journey .cj-home-link{display:inline-flex;align-items:center;gap:5px;min-height:44px;margin:0 0 15px;color:var(--vis-muted,#556277);text-decoration:none;font-size:13px}
.credit-journey .cj-home-link:hover{color:var(--vis-accent-ink,#345dc8)}
.credit-journey .cj-surface{position:relative;isolation:isolate;padding:34px 38px 30px;border:1px solid var(--cj-edge);border-radius:30px;background:var(--vis-surface,#fff);background:var(--cj-glass);box-shadow:0 18px 65px rgb(41 66 114 / 7%),inset 0 1px 0 var(--vis-glass-edge,rgba(255,255,255,.8));backdrop-filter:blur(26px) saturate(1.25);-webkit-backdrop-filter:blur(26px) saturate(1.25)}
.credit-journey .cj-surface::before{content:'';position:absolute;z-index:-1;inset:-1px;border-radius:inherit;background:radial-gradient(ellipse at 95% 0%,rgb(103 143 255 / 11%),transparent 55%);pointer-events:none}
.credit-journey .cj-steps{display:flex;gap:20px;list-style:none;padding:0;margin:0 0 42px;font-size:12px;font-weight:550;color:var(--vis-muted,#556277)}
.credit-journey .cj-steps li{display:flex;align-items:center;gap:9px;white-space:nowrap}
.credit-journey .cj-steps li>span{display:grid;place-items:center;width:25px;height:25px;border:1px solid var(--cj-edge);border-radius:8px;font-size:11px}
.credit-journey .cj-steps [aria-current="step"]{color:var(--vis-ink,#17243d)}
.credit-journey .cj-steps [aria-current="step"]>span{background:var(--vis-brand,#678fff);border-color:var(--vis-brand,#678fff);color:#122751}
.credit-journey .cj-steps .is-complete>span{background:var(--vis-accent-soft,#eaf0ff);color:var(--vis-accent-ink,#345dc8)}
.credit-journey fieldset{min-width:0;margin:0;padding:0;border:0}
.credit-journey .cj-heading{margin-bottom:28px}
.credit-journey .cj-eyebrow{color:var(--vis-accent-ink,#345dc8);font-size:12px;font-weight:600;line-height:1.6;margin-bottom:12px;overflow-wrap:anywhere}
.credit-journey h1{font-size:clamp(27px,3.5vw,36px);line-height:1.18;letter-spacing:-.045em;font-weight:600;color:var(--vis-ink,#17243d);text-wrap:balance}
.credit-journey h1:focus{outline:none}
.credit-journey .cj-heading>p:last-child:not(.cj-eyebrow){margin-top:14px;color:var(--vis-muted,#556277);font-size:14px;line-height:1.75}
.credit-journey .cj-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.credit-journey .cj-option{display:flex;align-items:center;gap:13px;min-width:0;min-height:116px;margin:0;padding:21px 18px;border:1px solid var(--cj-edge);border-radius:18px;background:color-mix(in srgb,var(--vis-surface,#fff) 65%,transparent);color:var(--vis-ink,#17243d);text-align:left;box-shadow:inset 0 1px 0 var(--vis-glass-edge,rgba(255,255,255,.7));transition:background .18s,border-color .18s,transform .18s}
.credit-journey .cj-option:hover{border-color:var(--vis-brand,#678fff);transform:translateY(-1px)}
.credit-journey .cj-option.is-selected{border-color:var(--vis-brand,#678fff);background:color-mix(in srgb,var(--vis-accent-soft,#eaf0ff) 80%,var(--cj-glass));box-shadow:0 0 0 1px color-mix(in srgb,var(--vis-brand,#678fff) 20%,transparent),inset 0 1px 0 var(--vis-glass-edge,rgba(255,255,255,.7))}
.credit-journey .cj-option-icon{color:var(--vis-accent-ink,#345dc8);flex:none}
.credit-journey .cj-option-copy{flex:1;min-width:0}
.credit-journey .cj-option-copy>strong{display:block;font-size:14px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}
.credit-journey .cj-option-copy>span{display:block;color:var(--vis-muted,#556277);font-size:12px;line-height:1.65;margin-top:5px}
.credit-journey .cj-option-check{display:grid;place-items:center;width:19px;height:19px;flex:none;border:1px solid var(--cj-edge);border-radius:50%;color:var(--vis-ink,#17243d)}
.credit-journey .is-selected .cj-option-check{background:var(--vis-brand,#678fff);border-color:var(--vis-brand,#678fff);color:#122751}
.credit-journey .cj-option-check .cj-icon{width:13px;height:13px}
.credit-journey .cj-company-selection{margin-top:26px;padding-top:23px;border-top:1px solid var(--cj-edge)}
.credit-journey h2{color:var(--vis-ink,#17243d);font-size:17px;line-height:1.5;letter-spacing:-.02em;font-weight:600}
.credit-journey .cj-company-selection>p{margin-top:7px;color:var(--vis-muted,#556277);font-size:13px}
.credit-journey .cj-companies{display:grid;gap:9px;margin-top:15px}
.credit-journey .cj-companies .cj-option{min-height:66px;padding:15px 18px;border-radius:13px}
.credit-journey .cj-text-button{min-height:44px;margin-top:8px;padding:7px 0;border:0;border-radius:6px;background:transparent;color:var(--vis-accent-ink,#345dc8);font-size:13px;font-weight:550}
.credit-journey .cj-amount-label,.credit-journey .cj-other>label{display:block;margin:0 0 10px;color:var(--vis-ink,#17243d);font-size:13px;font-weight:550}
.credit-journey .cj-amount-field{display:flex;align-items:center;gap:14px;width:100%;padding:18px 22px;border:1px solid var(--cj-edge);border-radius:18px;background:color-mix(in srgb,var(--vis-surface,#fff) 75%,transparent);transition:border-color .2s,box-shadow .2s}
.credit-journey .cj-amount-field:focus-within{border-color:var(--vis-brand,#678fff);box-shadow:0 0 0 3px color-mix(in srgb,var(--vis-brand,#678fff) 13%,transparent)}
.credit-journey .cj-amount-field>span{color:var(--vis-muted,#556277);font-size:25px;line-height:1}
.vis-ui .credit-journey .cj-amount-field input{display:block;width:100%;min-width:0;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:var(--vis-ink,#17243d);-webkit-text-fill-color:var(--vis-ink,#17243d);box-shadow:none;outline:none;font:500 clamp(27px,4.5vw,41px)/1.5 var(--vis-font,system-ui,sans-serif);letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.credit-journey input::placeholder{color:var(--vis-muted,#556277);opacity:.7}
.credit-journey .cj-helper{color:var(--vis-muted,#556277);font-size:12px;line-height:1.7;margin-top:10px}
.credit-journey .cj-amount-presets{display:flex;flex-wrap:wrap;gap:9px;margin-top:23px}
.credit-journey .cj-amount-presets>button{min-height:42px;padding:9px 14px;border:1px solid var(--cj-edge);border-radius:11px;background:transparent;color:var(--vis-ink,#17243d);font-size:12px}
.credit-journey .cj-amount-presets>button:hover{border-color:var(--vis-brand,#678fff);background:var(--vis-accent-soft,#eaf0ff)}
.credit-journey .cj-other{margin-top:22px}
.vis-ui .credit-journey .cj-other textarea{display:block;width:100%;min-height:116px;margin:0;padding:16px 18px;border:1px solid var(--cj-edge);border-radius:14px;background:var(--cj-glass);color:var(--vis-ink,#17243d);-webkit-text-fill-color:var(--vis-ink,#17243d);font:400 16px/1.7 var(--vis-font,system-ui,sans-serif);resize:vertical}
.credit-journey .cj-other textarea::placeholder{color:var(--vis-muted,#556277);opacity:1}
.credit-journey .cj-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:30px;padding-top:22px;border-top:1px solid var(--cj-edge)}
.credit-journey .cj-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:12px 20px;border:1px solid transparent;border-radius:13px;font-size:13px;line-height:1.5;font-weight:600;text-decoration:none;transition:background .18s,transform .18s}
.credit-journey .cj-primary{color:var(--vis-on-action,#fff);background:var(--vis-action,#345ccc);border-color:transparent}
.credit-journey .cj-primary:hover{background:color-mix(in srgb,var(--vis-action,#345ccc) 90%,var(--vis-ink,#17243d));transform:translateY(-1px)}
.credit-journey .cj-secondary{color:var(--vis-ink,#17243d);background:transparent;border-color:var(--cj-edge)}
.credit-journey .cj-button .cj-icon{width:18px;height:18px}
.credit-journey .cj-error:not(:empty){padding:13px 16px;margin-top:20px;border-radius:12px;background:var(--vis-danger-soft,#fff0f0);color:var(--vis-danger,#a72538);font-size:13px}
.credit-journey .cj-summary{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:24px;border:1px solid var(--cj-edge);border-radius:18px;background:color-mix(in srgb,var(--vis-accent-soft,#eaf0ff) 50%,transparent)}
.credit-journey .cj-summary>div{min-width:0}.credit-journey .cj-summary>div:last-child{grid-column:1/-1}
.credit-journey .cj-summary dt{color:var(--vis-muted,#556277);font-size:12px;line-height:1.5;margin-bottom:7px}
.credit-journey .cj-summary dd{font-size:17px;line-height:1.5;font-weight:550;color:var(--vis-ink,#17243d);overflow-wrap:anywhere}
.credit-journey .cj-guidance{display:flex;flex-direction:column;align-items:flex-start;gap:22px;padding:27px 0}
.credit-journey .cj-guidance-symbol{display:block;margin-bottom:13px;color:var(--vis-accent-ink,#345dc8)}
.credit-journey .cj-guidance-symbol .cj-icon{width:27px;height:27px}
.credit-journey .cj-guidance p,.credit-journey .cj-product-options>p{margin-top:7px;color:var(--vis-muted,#556277);font-size:13px;line-height:1.8}
.credit-journey .cj-product-options{margin-top:16px;padding-top:24px;border-top:1px solid var(--cj-edge)}
.credit-journey .cj-product-options>div{display:grid;gap:10px;margin-top:16px}
.credit-journey .cj-product{display:flex;align-items:center;justify-content:space-between;gap:15px;min-width:0;min-height:65px;padding:16px 19px;border:1px solid var(--cj-edge);border-radius:14px;background:var(--cj-glass);color:var(--vis-accent-ink,#345dc8);text-align:left}
.credit-journey .cj-product>span{min-width:0}.credit-journey .cj-product strong{display:block;font-size:14px;color:var(--vis-ink,#17243d);font-weight:550}
.credit-journey .cj-product span>span{display:block;margin-top:3px;font-size:12px;color:var(--vis-muted,#556277)}
.credit-journey .cj-product span>.cj-product-action{margin-top:8px;color:var(--vis-accent-ink,#345dc8);font-weight:550}
.credit-journey .cj-note{margin-top:23px;color:var(--vis-muted,#556277);font-size:12px;line-height:1.75}
.credit-journey .cj-loading{display:flex;align-items:center;gap:16px;min-height:60px;margin-top:20px;color:var(--vis-muted,#556277);font-size:13px}
.credit-journey .cj-busy-orbs{display:flex;gap:4px;padding:10px}
.credit-journey .cj-busy-orbs i{width:8px;height:8px;border-radius:50%;background:var(--vis-brand,#678fff);animation:cj-orb-pulse 1.2s ease-in-out infinite}.credit-journey .cj-busy-orbs i:nth-child(2){animation-delay:.16s}.credit-journey .cj-busy-orbs i:nth-child(3){animation-delay:.32s}
.credit-journey :is(button,a,input,textarea):focus-visible{outline:3px solid var(--vis-brand,#678fff);outline-offset:4px}
@keyframes cj-orb-pulse{0%,100%{transform:translateY(0);opacity:.45}50%{transform:translateY(-5px);opacity:1}}
@media(max-width:600px){.vis-ui .credit-journey{padding:4px 0 35px}.credit-journey .cj-surface{padding:25px 19px 22px;border-radius:23px}.credit-journey .cj-steps{gap:13px;font-size:11px;margin-bottom:33px}.credit-journey .cj-steps li{gap:6px}.credit-journey .cj-steps li>span{width:22px;height:22px;font-size:10px;border-radius:7px}.credit-journey .cj-heading{margin-bottom:24px}.credit-journey .cj-heading>p:last-child:not(.cj-eyebrow){font-size:13px}.credit-journey .cj-options{grid-template-columns:1fr;gap:10px}.credit-journey .cj-option{min-height:87px;padding:17px 15px}.credit-journey .cj-amount-field{padding:17px 15px;gap:10px}.credit-journey .cj-amount-field>span{font-size:21px}.credit-journey .cj-amount-presets{gap:6px}.credit-journey .cj-amount-presets>button{font-size:11px;padding:9px 10px}.credit-journey .cj-footer{margin-top:26px;padding-top:20px}.credit-journey .cj-button{padding:12px 14px;font-size:12px}.credit-journey .cj-summary{grid-template-columns:1fr;gap:18px;padding:20px}.credit-journey .cj-guidance .cj-button{width:100%}.credit-journey .cj-summary dd{font-size:16px}}
@media(prefers-reduced-motion:reduce){.credit-journey *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
