.outer-container{flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.step-circle-container{border-radius:var(--radius);border:1px solid var(--border);background:var(--card);width:100%;max-width:42rem;box-shadow:var(--shadow-2xl);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);margin-left:auto;margin-right:auto;transition:all .3s}.dark .step-circle-container{background:color-mix(in srgb,var(--card),transparent 20%);border-color:color-mix(in srgb,var(--border),transparent 70%)}.step-circle-container:hover{box-shadow:0 0 40px color-mix(in srgb,var(--primary),transparent 90%)}.step-indicator-row{align-items:center;gap:.5rem;width:100%;padding:2rem;display:flex}@media (max-width:640px){.step-indicator-row{padding:1.5rem 1rem}}.step-content-default{padding:0 2rem;position:relative;overflow:hidden}@media (max-width:640px){.step-content-default{padding:0 1rem}}.step-default{padding:1rem 0}.footer-container{padding:1.5rem 2rem 2rem}@media (max-width:640px){.footer-container{padding:1.5rem 1rem}}.footer-nav{gap:.75rem;margin-top:1.5rem;display:flex}.footer-nav.spread{justify-content:space-between}.footer-nav.end{justify-content:flex-end}.back-button{border-radius:var(--radius);height:2.25rem;color:var(--muted-foreground);background:var(--background);border:1px solid var(--border);cursor:pointer;box-shadow:var(--shadow-sm);outline:none;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .3s;display:inline-flex}.back-button:hover{background:var(--accent);color:var(--accent-foreground)}.back-button:focus-visible{box-shadow:0 0 0 2px var(--background),0 0 0 4px var(--ring)}.back-button.inactive{pointer-events:none;opacity:.5}.next-button{border-radius:var(--radius);background:linear-gradient(to right,var(--primary),color-mix(in srgb,var(--primary),transparent 20%));color:var(--primary-foreground);cursor:pointer;height:2.25rem;box-shadow:0 4px 6px -1px color-mix(in srgb,var(--primary),transparent 70%);border:none;outline:none;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;transition:all .3s;display:inline-flex}.next-button:hover{background:linear-gradient(to right,color-mix(in srgb,var(--primary),black 5%),var(--primary));box-shadow:0 10px 15px -3px color-mix(in srgb,var(--primary),transparent 60%);transform:translateY(-1px)}.next-button:focus-visible{box-shadow:0 0 0 2px var(--background),0 0 0 4px var(--ring)}.next-button:active{transform:scale(.98)}.step-indicator{cursor:pointer;outline:none;transition:transform .2s;position:relative}.step-indicator:hover{transform:scale(1.05)}.step-indicator-inner{width:2.5rem;height:2.5rem;box-shadow:var(--shadow-sm);border-radius:9999px;justify-content:center;align-items:center;font-size:.875rem;font-weight:600;transition:all .3s;display:flex}@media (max-width:640px){.step-indicator-inner{width:2rem;height:2rem;font-size:.75rem}}.step-indicator-inner.inactive{background:var(--muted);color:var(--muted-foreground);border:2px solid var(--border)}.step-indicator-inner.active{background:var(--primary);color:var(--primary-foreground);border:2px solid var(--primary);box-shadow:0 0 15px color-mix(in srgb,var(--primary),transparent 60%)}.step-indicator-inner.complete{background:var(--primary);color:var(--primary-foreground);border:2px solid var(--primary)}.active-dot{background:var(--primary-foreground);border-radius:9999px;width:.625rem;height:.625rem;animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.step-number{font-size:.875rem;font-weight:600}.step-connector{background:var(--muted);border-radius:.25rem;flex:1;height:.125rem;margin-left:.5rem;margin-right:.5rem;position:relative;overflow:hidden}@media (max-width:640px){.step-connector{margin-left:.25rem;margin-right:.25rem}}.step-connector-inner{background:var(--primary);height:100%;box-shadow:0 0 10px color-mix(in srgb,var(--primary),transparent 50%);position:absolute;top:0;left:0}.check-icon{width:1.25rem;height:1.25rem;color:var(--primary-foreground)}@media (max-width:640px){.check-icon{width:1rem;height:1rem}}
