:root{--font-sans:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", monospace;--bg-dark:#07080c;--bg-surface:#0f1118;--bg-card:#11141ebf;--bg-card-hover:#181c2ad9;--bg-input:#0a0c12cc;--bg-glass:#ffffff08;--border-subtle:#ffffff12;--border-hover:#ffffff24;--border-focus:#6366f180;--border-active:#6366f1;--primary:#6366f1;--primary-hover:#4f46e5;--primary-glow:#6366f159;--primary-subtle:#6366f11f;--accent-purple:#8b5cf6;--accent-cyan:#06b6d4;--accent-gradient:linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #d946ef 100%);--accent-gradient-glow:linear-gradient(135deg, #6366f166 0%, #8b5cf666 100%);--text-main:#f8fafc;--text-muted:#94a3b8;--text-faint:#64748b;--text-inverted:#07080c;--emerald:#10b981;--emerald-bg:#10b9811f;--emerald-glow:#10b98140;--amber:#f59e0b;--amber-bg:#f59e0b1f;--rose:#f43f5e;--rose-bg:#f43f5e1f;--shadow-sm:0 2px 8px #0006;--shadow-md:0 8px 30px #00000080;--shadow-glow:0 0 35px var(--primary-glow);--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-xl:24px;--radius-full:9999px;--transition-fast:.15s cubic-bezier(.16, 1, .3, 1);--transition-normal:.25s cubic-bezier(.16, 1, .3, 1);--transition-smooth:.4s cubic-bezier(.16, 1, .3, 1)}*{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--bg-dark);color:var(--text-main);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;font-size:16px;line-height:1.5;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:0;filter:blur(80px);background:radial-gradient(circle,#6366f117 0%,#8b5cf60a 40%,#0000 70%);width:60vw;height:60vw;position:fixed;top:-20vh;left:20vw}body:after{content:"";pointer-events:none;z-index:0;filter:blur(100px);background:radial-gradient(circle,#06b6d40f 0%,#6366f108 40%,#0000 70%);width:50vw;height:50vw;position:fixed;bottom:-15vh;right:10vw}#root{z-index:1;flex-direction:column;min-height:100vh;display:flex;position:relative}h1,h2,h3,h4,h5,h6{letter-spacing:-.025em;color:var(--text-main);font-weight:700}.gradient-text{background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;display:inline-block}.btn{border-radius:var(--radius-md);font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-normal);-webkit-user-select:none;user-select:none;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.9375rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary{background:var(--accent-gradient);color:#fff;box-shadow:0 4px 20px var(--primary-glow)}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 28px #6366f180}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.btn-secondary{color:var(--text-main);border-color:var(--border-subtle);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d}.btn-secondary:hover:not(:disabled){border-color:var(--border-hover);background:#ffffff14}.btn-secondary:disabled{opacity:.4;cursor:not-allowed}.glass-panel{background:var(--bg-card);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);transition:border-color var(--transition-normal)}.glass-panel:hover{border-color:var(--border-hover)}.form-group{flex-direction:column;gap:.45rem;margin-bottom:1.25rem;display:flex}.form-label{color:var(--text-muted);justify-content:space-between;align-items:center;font-size:.875rem;font-weight:600;display:flex}.form-label span.req{color:var(--primary);margin-left:2px}.input-field{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-md);width:100%;color:var(--text-main);font-family:var(--font-sans);transition:all var(--transition-fast);outline:none;padding:.85rem 1rem;font-size:.9375rem}.input-field:focus{border-color:var(--primary);background:#0e111af2;box-shadow:0 0 0 3px #6366f133}.input-field::placeholder{color:var(--text-faint)}textarea.input-field{resize:vertical;min-height:120px;line-height:1.6}.badge{border-radius:var(--radius-full);letter-spacing:.02em;text-transform:uppercase;align-items:center;gap:.35rem;padding:.25rem .65rem;font-size:.75rem;font-weight:600;display:inline-flex}.badge-primary{background:var(--primary-subtle);color:#a5b4fc;border:1px solid #6366f140}.badge-success{background:var(--emerald-bg);color:#6ee7b7;border:1px solid #10b9814d}.badge-warning{background:var(--amber-bg);color:#fcd34d;border:1px solid #f59e0b4d}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-dark)}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#fff3}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 15px var(--primary-glow)}50%{box-shadow:0 0 30px #6366f199}}.animate-fade-in{animation:.35s forwards fadeIn}.app-container{width:100%;max-width:1080px;margin:0 auto;padding:2rem 1.5rem 4rem}.app-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;margin-bottom:2.5rem;padding:1rem 0 2rem;display:flex}.brand{align-items:center;gap:.75rem;text-decoration:none;display:flex}.brand-logo{background:var(--accent-gradient);border-radius:var(--radius-md);width:40px;height:40px;box-shadow:0 4px 15px var(--primary-glow);justify-content:center;align-items:center;display:flex}.brand-text h1{letter-spacing:-.02em;font-size:1.15rem;font-weight:800;line-height:1.1}.brand-text span{color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;font-size:.75rem;font-weight:500}.header-status{align-items:center;gap:.75rem;display:flex}.stepper-nav{justify-content:space-between;align-items:center;margin-bottom:3rem;display:flex;position:relative}.stepper-progress-bar{background:var(--border-subtle);z-index:0;height:2px;position:absolute;top:20px;left:5%;right:5%}.stepper-progress-fill{background:var(--accent-gradient);height:100%;transition:width var(--transition-normal)}.step-item{z-index:1;flex-direction:column;align-items:center;gap:.5rem;display:flex;position:relative}.step-circle{background:var(--bg-surface);border:2px solid var(--border-subtle);width:42px;height:42px;color:var(--text-muted);transition:all var(--transition-normal);border-radius:50%;justify-content:center;align-items:center;font-size:.9375rem;font-weight:700;display:flex}.step-item.active .step-circle{background:var(--bg-dark);border-color:var(--primary);color:#fff;box-shadow:0 0 20px var(--primary-glow);transform:scale(1.08)}.step-item.completed .step-circle{background:var(--emerald);border-color:var(--emerald);color:#fff;box-shadow:0 0 15px var(--emerald-glow)}.step-label{color:var(--text-muted);transition:color var(--transition-fast);font-size:.8125rem;font-weight:600}.step-item.active .step-label{color:var(--text-main);font-weight:700}.step-item.completed .step-label{color:var(--emerald)}.step-card{margin-bottom:2rem;padding:2.75rem 2.5rem}.step-header{text-align:center;max-width:620px;margin:0 auto 2.5rem}.step-header h2{letter-spacing:-.03em;margin-bottom:.65rem;font-size:2rem}.step-header p{color:var(--text-muted);font-size:1rem;line-height:1.6}.chips-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem;margin-top:.25rem;display:grid}.chip-card{border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;color:var(--text-muted);transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;background:#ffffff05;align-items:center;gap:.75rem;padding:.9rem 1.1rem;font-size:.9rem;font-weight:600;display:flex}.chip-card:hover{border-color:var(--border-hover);color:var(--text-main);background:#ffffff0d}.chip-card.selected{background:var(--primary-subtle);border-color:var(--primary);color:#fff;box-shadow:0 0 15px #6366f140}.pill-group{flex-wrap:wrap;gap:.6rem;margin-top:.25rem;display:flex}.pill-item{border:1px solid var(--border-subtle);border-radius:var(--radius-full);cursor:pointer;color:var(--text-muted);transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;background:#ffffff05;padding:.65rem 1.25rem;font-size:.875rem;font-weight:600}.pill-item:hover{border-color:var(--border-hover);color:var(--text-main)}.pill-item.selected{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 0 12px var(--primary-glow)}.goals-list{flex-direction:column;gap:.5rem;margin-top:.5rem;display:flex}.goal-item{align-items:center;gap:.5rem;display:flex}.goal-btn-remove{color:var(--text-faint);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;align-items:center;padding:.4rem;display:flex}.goal-btn-remove:hover{color:var(--rose)}.checkout-layout{grid-template-columns:1.1fr .9fr;gap:2rem;display:grid}@media (width<=840px){.checkout-layout{grid-template-columns:1fr}}.summary-card,.payment-card{border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:#ffffff05;padding:1.75rem}.summary-row{border-bottom:1px solid var(--border-subtle);justify-content:space-between;padding:.85rem 0;font-size:.9rem;display:flex}.summary-row:last-child{border-bottom:none}.summary-label{color:var(--text-muted)}.summary-value{color:var(--text-main);text-align:right;font-weight:600}.price-box{border-radius:var(--radius-md);text-align:center;background:linear-gradient(135deg,#6366f126 0%,#8b5cf614 100%);border:1px solid #6366f14d;margin:1.25rem 0;padding:1.5rem}.price-box .amount{letter-spacing:-.03em;color:#fff;font-size:2.5rem;font-weight:800}.price-box .desc{color:#a5b4fc;margin-top:.25rem;font-size:.8125rem}.alert{border-radius:var(--radius-md);align-items:center;gap:.75rem;margin-bottom:1.25rem;padding:.85rem 1.1rem;font-size:.875rem;display:flex}.alert-error{background:var(--rose-bg);color:#fda4af;border:1px solid #f43f5e4d}.alert-success{background:var(--emerald-bg);color:#6ee7b7;border:1px solid #10b9814d}.alert-info{background:var(--primary-subtle);color:#c7d2fe;border:1px solid #6366f14d}.confirmed-hero{text-align:center;padding:2.5rem 1.5rem}.success-icon-wrap{background:var(--emerald-bg);border:2px solid var(--emerald);width:80px;height:80px;color:var(--emerald);box-shadow:0 0 35px var(--emerald-glow);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1.5rem;display:flex}.ref-pill{font-family:var(--font-mono);border-radius:var(--radius-sm);border:1px solid var(--border-subtle);color:#a5b4fc;background:#ffffff0d;padding:.35rem .75rem;font-size:.875rem}
