:root{--color-primary: #FF9A8B;--color-primary-hover: #f08878;--color-primary-shadow: rgba(255, 154, 139, .25);--color-background: #FFF9F5;--color-surface: #FFFFFF;--color-charcoal: #2D2D2D;--color-warm-grey: #8A817C;--color-border: #E8E0DA;--color-danger: #D93025;--color-danger-light: #FFCDD2;--color-sage: #A8C3B4;--font-header: "Playfair Display", "Georgia", serif;--font-body: "Inter", "Segoe UI", system-ui, sans-serif;--radius-card: 24px;--radius-button: 30px;--radius-input: 12px;--shadow-card: 0 4px 12px rgba(0, 0, 0, .08);--shadow-button: 0 4px 8px var(--color-primary-shadow)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);font-size:16px;color:var(--color-charcoal);background:var(--color-background);min-height:100vh}.page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 20px}.page:before{content:"";position:fixed;top:-180px;right:-120px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(255,154,139,.18) 0%,transparent 70%);pointer-events:none;z-index:0}.page:after{content:"";position:fixed;bottom:-140px;left:-100px;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,rgba(168,195,180,.16) 0%,transparent 70%);pointer-events:none;z-index:0}.card{position:relative;z-index:1;width:min(480px,100%);background:var(--color-surface);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:36px 32px 32px;animation:fadeInUp .5s ease-out both}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.brandName{font-family:var(--font-header);font-size:1.1rem;font-weight:700;color:var(--color-primary);margin-bottom:20px;letter-spacing:.01em}h1{font-family:var(--font-header);font-size:clamp(1.6rem,3.2vw,2rem);font-weight:700;line-height:1.2;color:var(--color-charcoal)}.lead{margin-top:10px;color:var(--color-warm-grey);line-height:1.6;font-size:.95rem}.divider{border:none;border-top:1px solid var(--color-border);margin:24px 0}.steps{display:flex;flex-direction:column;gap:16px;margin:0;padding:0;list-style:none}.step{display:flex;align-items:flex-start;gap:14px}.stepNumber{flex-shrink:0;width:32px;height:32px;border-radius:50%;background:#ff9a8b1f;color:var(--color-primary);font-weight:700;font-size:.85rem;display:grid;place-items:center}.stepContent{padding-top:4px}.stepTitle{font-weight:600;font-size:.9rem;color:var(--color-charcoal);line-height:1.3}.stepDesc{font-size:.82rem;color:var(--color-warm-grey);line-height:1.45;margin-top:2px}.form{display:flex;flex-direction:column;gap:6px}.formLabel{font-weight:600;font-size:.9rem;color:var(--color-charcoal)}.formInput{width:100%;border-radius:var(--radius-input);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-charcoal);padding:14px 16px;font-family:var(--font-body);font-size:1rem;transition:border-color .2s ease,outline-color .2s ease}.formInput::placeholder{color:var(--color-warm-grey);opacity:.6}.formInput:focus{outline:2px solid var(--color-primary);outline-offset:2px;border-color:var(--color-primary)}.formInput[aria-invalid=true]{border-color:var(--color-danger)}.formInput[aria-invalid=true]:focus{outline-color:var(--color-danger)}.formHint{font-size:.8rem;color:var(--color-warm-grey);margin-top:2px}.btnPrimary{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:10px;border:none;border-radius:var(--radius-button);padding:14px 20px;font-family:var(--font-body);font-weight:600;font-size:.95rem;letter-spacing:.04em;text-transform:uppercase;background:var(--color-primary);color:#fff;cursor:pointer;box-shadow:var(--shadow-button);transition:background .2s ease,box-shadow .2s ease,transform .1s ease}.btnPrimary:hover:not(:disabled){background:var(--color-primary-hover);box-shadow:0 6px 14px var(--color-primary-shadow)}.btnPrimary:active:not(:disabled){transform:scale(.98)}.btnPrimary:disabled{opacity:.7;cursor:not-allowed}.spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.errorText{color:var(--color-danger);font-size:.85rem;line-height:1.4;animation:fadeIn .25s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.state{margin-top:20px;padding:14px 16px;border-radius:var(--radius-input);background:#a8c3b41f;color:var(--color-charcoal);font-size:.9rem;line-height:1.5;animation:fadeIn .3s ease-out}.state p{margin:0}.state a{color:var(--color-primary);font-weight:600;text-decoration:underline;text-underline-offset:2px}.state a:hover{color:var(--color-primary-hover)}.stateError{background:var(--color-danger-light);color:var(--color-danger)}.stateError h2{margin:0 0 6px;font-family:var(--font-body);font-size:1rem;font-weight:600}.trustNote{margin-top:20px;text-align:center;font-size:.78rem;color:var(--color-warm-grey);line-height:1.5}.redirecting{display:flex;flex-direction:column;align-items:center;gap:14px;padding:12px 0 4px;text-align:center;animation:fadeIn .3s ease-out}.redirecting .spinner{width:28px;height:28px;border-width:3px;border-color:#ff9a8b40;border-top-color:var(--color-primary)}.redirecting p{color:var(--color-warm-grey);font-size:.9rem;line-height:1.5}.redirecting p strong{color:var(--color-charcoal);font-weight:600}
