.otp-verification-container{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);max-width:28rem;margin:0 auto;padding:1rem 1.5rem}.otp-card{background:#fffffff2;border-radius:24px;border:1px solid rgba(255,255,255,.3);box-shadow:0 8px 32px #0000001a,0 2px 8px #0000000d;padding:1.5rem}.otp-input{border-radius:12px;border:2px solid var(--ms-gray-40, #D1D5DB);background:#ffffffe6;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .2s ease;font-family:Inter,SF Pro Display,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.otp-input:focus{outline:none;border-color:#2563eb;background:#fffffffa;box-shadow:0 0 0 4px #2563eb1f;transform:translateY(-2px)}.otp-input:disabled{opacity:.5;cursor:not-allowed}.otp-button{border-radius:50px;font-weight:600;font-size:14px;min-height:44px;padding:12px 28px;transition:all .3s cubic-bezier(.4,0,.2,1);border:none;font-family:Inter,SF Pro Display,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.otp-button-primary{background:linear-gradient(135deg,#2563eb,#3b82f6,#14b8a6);color:#fff;box-shadow:0 8px 30px #2563eb40,0 2px 8px #2563eb26}.otp-button-primary:hover:not(:disabled){box-shadow:0 12px 40px #2563eb59,0 4px 12px #2563eb40;transform:translateY(-2px) scale(1.02);background:linear-gradient(135deg,#3b82f6,#60a5fa,#2dd4bf)}.otp-button-primary:active:not(:disabled){transform:translateY(0) scale(.98);box-shadow:0 4px 15px #2563eb4d}.otp-button-secondary{background-color:#fff;color:var(--ms-gray-130, #1F2937);border:2px solid var(--ms-gray-60, #9CA3AF)}.otp-button-secondary:hover:not(:disabled){background-color:var(--ms-gray-20, #F9FAFB);border-color:var(--ms-gray-100, #374151)}.otp-button:disabled{background:var(--ms-gray-20, #F9FAFB);color:var(--ms-gray-70, #6B7280);border-color:var(--ms-gray-40, #D1D5DB);cursor:not-allowed;opacity:.5;box-shadow:none;transform:none}.otp-verification-container [class*=icon]{background:linear-gradient(135deg,#2563eb,#14b8a6);box-shadow:0 8px 30px #2563eb40,0 2px 8px #2563eb26}.otp-verification-container [class*=success]{background:linear-gradient(135deg,#eff6fff2,#f0fdfaf2)!important;border:1px solid rgba(37,99,235,.3)!important;border-radius:20px!important;box-shadow:0 8px 32px #2563eb26!important}.otp-verification-container [class*=error]{border-radius:12px!important}.otp-verification-container>div>div>div[class*=success]:first-of-type{background:linear-gradient(135deg,#eff6fff2,#f0fdfaf2)!important;border:1px solid rgba(37,99,235,.3)!important;border-radius:16px!important;padding:16px;margin-bottom:20px}.otp-verification-container h2{font-family:Inter,SF Pro Display,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:600;color:var(--ms-gray-120)}.otp-verification-container p{font-family:Inter,SF Pro Display,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--ms-gray-100)}.otp-verification-container label{font-weight:600;font-size:14px;color:var(--ms-gray-120);font-family:Inter,SF Pro Display,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.otp-verification-container *{transition:all .2s ease}@media (max-width: 768px){.otp-verification-container button{padding:10px 20px;font-size:13px}}:root{--ms-blue: #2563eb;--ms-blue-hover: #3b82f6;--ms-blue-pressed: #1d4ed8;--ms-blue-light: #eff6ff;--ms-teal: #14b8a6;--ms-teal-hover: #2dd4bf;--ms-teal-light: #f0fdfa;--ms-gray-10: #fafbfc;--ms-gray-20: #f4f6f8;--ms-gray-30: #e8ecf0;--ms-gray-40: #d1d9e0;--ms-gray-50: #b8c4d0;--ms-gray-60: #9ca8b8;--ms-gray-70: #7c8a9a;--ms-gray-80: #5e6b7a;--ms-gray-90: #475569;--ms-gray-100: #334155;--ms-gray-110: #1e293b;--ms-gray-120: #0f172a;--ms-gray-130: #020617;--ms-white: #ffffff;--ms-black: #000000;--ms-green: #10b981;--ms-red: #ef4444;--ms-orange: #f59e0b;--ms-purple: #8b5cf6;--ms-cyan: #06b6d4;--primary-gradient: linear-gradient(135deg, #2563eb 0%, #3b82f6 50%, #14b8a6 100%);--primary-gradient-hover: linear-gradient(135deg, #3b82f6 0%, #60a5fa 50%, #2dd4bf 100%);--bg-gradient: linear-gradient(135deg, #0f172a 0%, #1e293b 30%, #334155 100%);--bg-gradient-animated: linear-gradient(-45deg, #0f172a, #1e293b, #334155, #475569);--card-gradient: linear-gradient(135deg, rgba(255, 255, 255, .98) 0%, rgba(255, 255, 255, .95) 100%);--shadow-gradient: linear-gradient(135deg, rgba(37, 99, 235, .15) 0%, rgba(20, 184, 166, .1) 100%);--shadow-sm: 0 2px 8px rgba(15, 23, 42, .06);--shadow-md: 0 4px 20px rgba(15, 23, 42, .1), 0 1px 3px rgba(15, 23, 42, .08);--shadow-lg: 0 12px 40px rgba(15, 23, 42, .12), 0 4px 12px rgba(15, 23, 42, .1);--shadow-xl: 0 20px 60px rgba(15, 23, 42, .15), 0 8px 20px rgba(15, 23, 42, .12);--shadow-primary: 0 8px 30px rgba(37, 99, 235, .25), 0 2px 8px rgba(37, 99, 235, .15);--shadow-primary-hover: 0 12px 40px rgba(37, 99, 235, .35), 0 4px 12px rgba(37, 99, 235, .25);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--transition-bounce: .4s cubic-bezier(.68, -.55, .265, 1.55)}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{font-family:Inter,SF Pro Display,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg-gradient);background-size:400% 400%;background-attachment:fixed;animation:gradientShift 20s ease infinite;color:var(--ms-gray-120);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:relative;overflow-x:hidden}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(circle at 20% 50%,rgba(37,99,235,.08) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(20,184,166,.08) 0%,transparent 50%),radial-gradient(circle at 40% 20%,rgba(59,130,246,.06) 0%,transparent 50%);pointer-events:none;z-index:0;animation:float 25s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(5deg)}}#root{min-height:100vh}.ms-font-hero{font-size:42px;font-weight:600;line-height:52px;color:var(--ms-gray-120)}.ms-font-title{font-size:28px;font-weight:600;line-height:36px;color:#fffffff2}.ms-card .ms-font-title,.ms-card h1.ms-font-title,.ms-card h2.ms-font-title{color:var(--ms-gray-120)}.ms-card .ms-font-body,.ms-card p.ms-font-body{color:var(--ms-gray-100)}.ms-font-subtitle{font-size:20px;font-weight:600;line-height:28px;color:var(--ms-gray-120)}.ms-font-body{font-size:14px;font-weight:400;line-height:20px}.ms-font-caption{font-size:12px;font-weight:400;line-height:16px}.ms-card{background:var(--card-gradient);backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);border:1px solid rgba(255,255,255,.4);border-radius:20px;box-shadow:var(--shadow-lg),inset 0 1px #fff9;transition:all var(--transition-base);position:relative;overflow:hidden;animation:cardFadeIn .6s ease-out}.ms-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--primary-gradient);opacity:0;transition:opacity var(--transition-base)}.ms-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-6px) scale(1.01);border-color:#fff9}.ms-card:hover:before{opacity:1}@keyframes cardFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.ms-button{display:inline-flex;align-items:center;justify-content:center;padding:14px 32px;border:none;border-radius:12px;font-family:inherit;font-size:15px;font-weight:600;text-decoration:none;cursor:pointer;transition:all var(--transition-base);min-height:48px;background:none;position:relative;overflow:hidden;letter-spacing:.3px}.ms-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.ms-button:hover:before{left:100%}.ms-button-primary{background:var(--primary-gradient);color:var(--ms-white);box-shadow:var(--shadow-primary);position:relative}.ms-button-primary:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:12px;padding:2px;background:var(--primary-gradient);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity var(--transition-base)}.ms-button-primary:hover{box-shadow:var(--shadow-primary-hover);transform:translateY(-3px) scale(1.03);background:var(--primary-gradient-hover)}.ms-button-primary:hover:after{opacity:1}.ms-button-primary:active{transform:translateY(-1px) scale(1.01);box-shadow:0 4px 15px #ff6b3566;transition:all var(--transition-fast)}.ms-button-secondary{background-color:var(--ms-white);color:var(--ms-gray-130);border:2px solid var(--ms-gray-60)}.ms-button-secondary:hover{background-color:var(--ms-gray-20);border-color:var(--ms-gray-100)}.ms-button:disabled{background-color:var(--ms-gray-20);color:var(--ms-gray-70);border-color:var(--ms-gray-40);cursor:not-allowed}.ms-input{width:100%;padding:14px 18px;border:2px solid var(--ms-gray-40);border-radius:14px;font-family:inherit;font-size:15px;background:#fffffff2;backdrop-filter:blur(15px) saturate(180%);-webkit-backdrop-filter:blur(15px) saturate(180%);transition:all var(--transition-base);box-shadow:var(--shadow-sm);position:relative}.ms-input::placeholder{color:var(--ms-gray-70);opacity:.7}.ms-input:hover{border-color:var(--ms-gray-60);box-shadow:var(--shadow-md);transform:translateY(-1px)}.ms-input:focus{outline:none;border-color:var(--ms-blue);background:#fff;box-shadow:0 0 0 4px #2563eb1f,var(--shadow-md);transform:translateY(-2px);animation:inputPulse .3s ease-out}@keyframes inputPulse{0%{box-shadow:0 0 #2563eb66}to{box-shadow:0 0 0 4px #2563eb1f,var(--shadow-md)}}.ms-label{display:block;margin-bottom:4px;font-weight:600;font-size:14px;color:var(--ms-gray-120)}.ms-select{width:100%;padding:12px 16px;border:2px solid var(--ms-gray-40);border-radius:12px;font-family:inherit;font-size:14px;background:#ffffffe6;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .2s ease;cursor:pointer}.ms-select:focus{outline:none;border-color:var(--ms-blue);background:#fffffffa;box-shadow:0 0 0 4px #2563eb1f;transform:translateY(-2px)}.container{max-width:1200px;margin:0 auto;padding:0 24px}.form-grid{display:grid;gap:24px}.form-grid-2{grid-template-columns:1fr 1fr}.form-grid-3{grid-template-columns:1fr 1fr 1fr}.choice-grid{display:grid;gap:16px;margin-top:16px}.choice-grid-2{grid-template-columns:1fr 1fr}.choice-grid-3{grid-template-columns:repeat(3,1fr)}.app-container{min-height:100vh;background:var(--bg-gradient);background-size:400% 400%;background-attachment:fixed;animation:gradientShift 15s ease infinite;position:relative;z-index:1}.app-container>*{position:relative;z-index:1}.app-main{padding:0;min-height:calc(100vh - 120px)}.error-message{background:var(--ms-red);color:var(--ms-white);padding:12px 16px;border-radius:4px;margin-bottom:24px;text-align:center}.header{position:sticky;top:0;z-index:1000;background:#ffffff26;backdrop-filter:blur(40px) saturate(180%);-webkit-backdrop-filter:blur(40px) saturate(180%);box-shadow:0 8px 32px #1f268726,inset 0 1px #ffffff4d;color:var(--ms-white);padding:20px 0;transition:all var(--transition-base);border-bottom:1px solid rgba(255,255,255,.2)}.header:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--primary-gradient);opacity:.4}.header-content{display:flex;align-items:center;justify-content:space-between}.header-brand{display:flex;align-items:center;gap:8px;font-weight:600}.header-brand .ms-font-body,.header-brand .ms-font-caption{font-weight:600;color:var(--ms-white)}.header-logo{width:32px;height:32px;display:flex;align-items:center;justify-content:center;overflow:hidden}.header-logo img{width:100%;height:100%;object-fit:contain}.header-subtitle{opacity:.9;font-weight:600;color:var(--ms-white)}.header-step-info{opacity:.95;font-weight:600;color:var(--ms-white)}.navigation-button-container{position:fixed;top:50%;transform:translateY(-50%);z-index:1000;transition:opacity .3s ease}.navigation-button-container--left{left:20px}.navigation-button-container--right{right:20px}.navigation-button{width:64px;height:64px;border-radius:50%;border:none;background:#fffffff2;backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);box-shadow:var(--shadow-lg),inset 0 1px #fff9;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-base);position:relative;overflow:hidden;font-size:20px}.navigation-button:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:var(--primary-gradient);opacity:0;transition:opacity var(--transition-base);z-index:0}.navigation-button>*{position:relative;z-index:1}.navigation-button:hover:not(:disabled){box-shadow:var(--shadow-primary);transform:scale(1.15) translateY(-2px);border:2px solid rgba(37,99,235,.3)}.navigation-button:hover:not(:disabled):before{opacity:.1}.navigation-button:active:not(:disabled){transform:scale(1.05);transition:all var(--transition-fast)}.navigation-button:disabled{opacity:.5;cursor:not-allowed}.navigation-spinner{width:20px;height:20px;border:2px solid var(--ms-gray-60);border-top:2px solid transparent;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.step-container{max-width:800px;margin:0 auto}.step-header{text-align:center;margin-top:32px;margin-bottom:12px;padding-top:24px}.step-icon{width:64px;height:64px;background:var(--primary-gradient);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;font-size:28px;box-shadow:var(--shadow-primary);position:relative;animation:iconFloat 3s ease-in-out infinite;transition:all var(--transition-base)}.step-icon:before{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%;background:var(--primary-gradient);opacity:.3;filter:blur(12px);z-index:-1;animation:iconGlow 2s ease-in-out infinite alternate}.step-icon:hover{transform:scale(1.1) rotate(5deg);box-shadow:var(--shadow-primary-hover)}@keyframes iconFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes iconGlow{0%{opacity:.3;transform:scale(1)}to{opacity:.5;transform:scale(1.1)}}.step-title{margin:0 0 8px;color:#fffffff2;font-weight:700;letter-spacing:-.5px;animation:titleFadeIn .8s ease-out}.step-description{margin:0;color:#ffffffd9;font-size:16px;line-height:1.6;animation:descriptionFadeIn 1s ease-out}@keyframes titleFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes descriptionFadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.step-card{border-radius:24px;padding:48px;background:var(--card-gradient);backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);box-shadow:var(--shadow-xl);margin-bottom:32px;border:1px solid rgba(255,255,255,.4);position:relative;overflow:hidden;animation:cardSlideIn .6s cubic-bezier(.4,0,.2,1)}.step-card:after{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--primary-gradient);opacity:.7}@keyframes cardSlideIn{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.form-section{margin-top:24px}.form-section--small{margin-top:16px}.form-section-title{margin-bottom:16px;color:var(--ms-gray-120);font-weight:600}.form-grid--gap-large{gap:20px}.form-label--block{margin-bottom:8px;display:block}.form-input--full{width:100%}.form-description{font-size:12px;color:var(--ms-gray-90);margin-top:4px;line-height:1.4}.stars-container{margin-top:8px}.group-title{margin-bottom:12px;color:var(--ms-blue)}.form-grid--margin-top{margin-top:12px}.choice-grid{display:flex;gap:8px;flex-wrap:wrap;justify-content:space-between}.choice-option{background:#fffffff2;backdrop-filter:blur(15px) saturate(180%);-webkit-backdrop-filter:blur(15px) saturate(180%);border:2px solid transparent;border-radius:18px;padding:24px 20px;cursor:pointer;transition:all var(--transition-base);text-align:center;position:relative;flex:1 1 auto;min-width:120px;max-width:200px;overflow:hidden;box-shadow:var(--shadow-sm)}.choice-option:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:18px;background:var(--primary-gradient);opacity:0;transition:opacity var(--transition-base);z-index:0}.choice-option>*{position:relative;z-index:1}.choice-option:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--primary-gradient);transform:scaleX(0);transition:transform .3s ease}.choice-option--selected:before{transform:scaleX(1)}.choice-option--selected{border-color:var(--ms-blue);transform:translateY(-6px) scale(1.02);box-shadow:var(--shadow-primary);background:#fff}.choice-option--selected:after{opacity:.08}.choice-option:hover{transform:translateY(-4px) scale(1.02);box-shadow:var(--shadow-lg);border-color:var(--ms-gray-60)}.choice-option:hover:after{opacity:.05}.choice-option-label{font-size:16px;font-weight:600;margin-bottom:4px;color:var(--ms-gray-120)}.choice-option-description{font-size:11px;color:var(--ms-gray-90);margin:0;line-height:1.3}.choice-option-checkmark{position:absolute;top:6px;right:6px;background:var(--ms-blue);color:var(--ms-white);width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600}.year-option{background:#fffffff2;backdrop-filter:blur(15px) saturate(180%);-webkit-backdrop-filter:blur(15px) saturate(180%);color:var(--ms-blue);border-radius:20px;padding:40px 32px;cursor:pointer;transition:all var(--transition-base);border:2px solid rgba(255,255,255,.4);position:relative;box-shadow:var(--shadow-md);overflow:hidden}.year-option:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--primary-gradient);opacity:0;transition:opacity var(--transition-base);z-index:0}.year-option>*{position:relative;z-index:1}.year-option--selected{background:var(--primary-gradient);color:var(--ms-white);border-color:var(--ms-blue);transform:scale(1.08) translateY(-6px);box-shadow:var(--shadow-primary-hover)}.year-option--selected:before{opacity:1}.year-option:hover{transform:translateY(-4px) scale(1.03);box-shadow:var(--shadow-lg);border-color:var(--ms-gray-60)}.year-option-checkmark{position:absolute;top:12px;right:12px;background:var(--ms-white);color:var(--ms-blue);border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700}.year-option-number{font-size:48px;font-weight:700;margin-bottom:12px;text-align:center;color:var(--ms-gray-120)}.year-option-duration{font-size:14px;font-weight:500;text-align:center;opacity:.8}.year-option-duration--selected{opacity:1}.info-card{background:linear-gradient(135deg,#ffe0b2,#ffccbc);border:none;border-radius:6px;padding:24px;margin-top:32px;box-shadow:0 8px 25px #ff980033}.info-card--small{margin-top:24px}.info-card-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;color:var(--ms-blue);font-weight:600;font-size:18px}.info-card-content{color:var(--ms-gray-100);font-size:14px;line-height:1.6}.study-preferences-card{background:var(--ms-white);border:1px solid var(--ms-gray-40);border-radius:12px;padding:12px;margin-top:24px}.study-preferences-header{font-size:18px;font-weight:600;color:var(--ms-gray-120);margin-bottom:20px;display:flex;align-items:center;gap:8px}.toggle-container{margin-top:20px;padding:16px;background:var(--ms-gray-10);border-radius:8px}.toggle-label{display:flex;align-items:center;justify-content:space-between;cursor:pointer;font-size:14px;font-weight:500;color:var(--ms-gray-130)}.toggle-content{display:flex;align-items:center;gap:8px}.toggle-description{font-size:12px;font-weight:400;color:var(--ms-gray-90);margin-top:2px}.toggle-switch{position:relative;width:48px;height:24px;background:var(--ms-gray-60);border-radius:12px;transition:background .2s ease;cursor:pointer}.toggle-switch--active{background:var(--ms-blue)}.toggle-slider{position:absolute;top:2px;left:2px;width:20px;height:20px;background:var(--ms-white);border-radius:50%;transition:left .2s ease;box-shadow:0 2px 4px #0003}.toggle-slider--active{left:26px}.confidence-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;max-width:100%}.confidence-item{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:8px 12px;background:#ffffff80;border-radius:8px;transition:background .2s ease;min-width:0}.confidence-item:hover{background:#fffc}.confidence-subject-name{font-size:13px;font-weight:500;color:var(--ms-gray-100);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.confidence-stars{display:flex;gap:4px;flex-shrink:0}.confidence-star{cursor:pointer;color:var(--ms-gray-90);font-size:18px;transition:all var(--transition-base);filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.confidence-star:hover{transform:scale(1.3) rotate(15deg);color:var(--ms-teal)}.confidence-star--active{color:#fbbf24;filter:drop-shadow(0 0 8px rgba(251,191,36,.6));animation:starPulse .3s ease-out}@keyframes starPulse{0%{transform:scale(1)}50%{transform:scale(1.4)}to{transform:scale(1.2)}}.confidence-profile-card{background:var(--ms-white);padding:12px;border-radius:4px;text-align:center}.confidence-profile-value{font-size:24px;font-weight:600;color:var(--ms-blue);margin-bottom:4px}.confidence-profile-label{font-size:12px;color:var(--ms-gray-90);font-weight:500}.confidence-profile-value--small{font-size:14px}.preview-section{margin-bottom:32px}.preview-section-title{margin-bottom:16px;color:var(--ms-blue);font-weight:600}.preview-summary-card{background:var(--ms-gray-20);padding:20px;border-radius:8px}.preview-success-card{background:var(--ms-green);color:var(--ms-white);padding:24px;border-radius:12px}.preview-success-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;font-size:18px;font-weight:600}.preview-success-content{margin:0 0 16px;line-height:1.6}.preview-stats-grid{margin-top:16px}.preview-stat-card{background:#fff3;padding:16px;border-radius:8px;text-align:center}.preview-stat-value{font-size:24px;font-weight:600;margin-bottom:4px}.preview-stat-label{font-size:12px;opacity:.9}.preview-milestone-card{background:var(--ms-blue-light);border:1px solid var(--ms-blue);padding:20px;border-radius:8px;text-align:center}.preview-milestone-title{font-size:18px;font-weight:700;color:var(--ms-blue);margin-bottom:8px}.preview-milestone-date{color:var(--ms-gray-130)}.preview-next-steps-card{background:var(--ms-orange);color:var(--ms-white);padding:24px;border-radius:12px}.preview-next-steps-header{display:flex;align-items:center;gap:12px;margin-bottom:12px;font-size:18px;font-weight:600}.preview-next-steps-content{margin:0;line-height:1.6}.payment-container{max-width:600px;margin:0 auto}.payment-card{background:var(--ms-white);border:2px solid var(--ms-blue);border-radius:12px;padding:32px;text-align:center;margin-bottom:24px;box-shadow:0 4px 16px #2563eb1f}.payment-amount{font-size:48px;font-weight:600;color:var(--ms-blue);margin-bottom:8px}.payment-plan{font-size:16px;color:var(--ms-gray-100);margin-bottom:24px;font-weight:500}.payment-features{text-align:left;margin-top:24px}.payment-features-title{font-size:14px;font-weight:600;margin-bottom:16px;color:var(--ms-gray-120);text-align:center}.payment-features-list{margin:0;padding:0;list-style:none}.payment-feature-item{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px;font-size:14px;color:var(--ms-gray-90)}.payment-feature-checkmark{color:var(--ms-green);font-size:16px}.payment-link-container{background:var(--ms-white);padding:16px;border-radius:8px;border:1px solid var(--ms-blue)}.payment-link-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.payment-link-title{font-weight:600;color:var(--ms-gray-120)}.payment-link-badge{background:var(--ms-green);color:var(--ms-white);padding:4px 8px;border-radius:4px;font-size:12px;font-weight:600}.payment-link-description{font-size:12px;color:var(--ms-gray-90);margin-bottom:12px}.payment-link-button{display:inline-flex;align-items:center;gap:10px;padding:16px 32px;background:var(--primary-gradient);color:var(--ms-white);text-decoration:none;border-radius:14px;font-size:16px;font-weight:600;transition:all var(--transition-base);width:100%;justify-content:center;box-shadow:var(--shadow-primary);position:relative;overflow:hidden;letter-spacing:.3px}.payment-link-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.payment-link-button:hover{background:var(--primary-gradient-hover);box-shadow:var(--shadow-primary-hover);transform:translateY(-2px) scale(1.02)}.payment-link-button:hover:before{left:100%}.payment-link-button:active{transform:translateY(0) scale(.98)}.payment-footer{padding:16px;background:var(--ms-gray-20);border-radius:8px;text-align:center;max-width:600px;margin:24px auto 0}.payment-footer-features{font-size:12px;color:var(--ms-gray-90);margin-bottom:8px}.payment-footer-disclaimer{font-size:11px;color:var(--ms-gray-80)}.complete-container{max-width:600px;margin:0 auto;text-align:center;padding:24px 0}.complete-icon{width:80px;height:80px;background:var(--ms-green);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 24px;font-size:32px}.complete-title{margin:0 0 12px;color:var(--ms-gray-120)}.complete-description{margin:0 0 32px;color:var(--ms-gray-90);font-size:16px}.complete-success-card{border-radius:12px;padding:32px;box-shadow:0 4px 12px #0000001a;margin-bottom:32px;background:var(--ms-green);color:var(--ms-white);border:none}.complete-success-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;font-size:20px;font-weight:600;justify-content:center}.complete-success-content{margin:0 0 20px;line-height:1.6}.complete-stats-grid{margin-top:20px}.complete-stat-card{background:#fff3;padding:16px;border-radius:8px}.complete-stat-value{font-size:18px;font-weight:600;margin-bottom:4px}.complete-stat-label{font-size:12px;opacity:.9}.complete-next-steps-card{border-radius:12px;padding:24px;box-shadow:0 4px 12px #0000001a;margin-bottom:32px}.complete-next-steps-title{margin:0 0 16px;color:var(--ms-blue);font-size:18px;font-weight:700}.preview-section-title,.preview-milestone-title,.cycle-timeline-title,.cycle-segment-dates,.cycle-timeline-footer,.cycle-milestone-row-duration{color:var(--ms-blue)}.cycle-milestone-row-number{background:var(--primary-gradient)}.complete-next-steps-content{text-align:left}.complete-next-steps-item{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}.complete-next-steps-checkmark{color:var(--ms-green);font-size:16px}.complete-next-steps-text{font-size:14px;color:var(--ms-gray-100)}.complete-button{padding:12px 32px;font-size:16px;font-weight:600}.complete-footer{margin-top:24px;font-size:12px;color:var(--ms-gray-90)}.cycle-timeline{margin-top:16px}.cycle-timeline-title{font-weight:700;color:var(--ms-blue);margin-bottom:24px;font-size:20px}.cycle-timeline-container{background:var(--ms-white);border:1px solid #e5e7eb;border-radius:8px;padding:12px}.cycle-timeline-content{max-height:360px;overflow-y:auto;position:relative;padding-left:24px}.cycle-timeline-line{position:absolute;left:8px;top:0;bottom:0;width:2px;background:#e5e7eb}.cycle-segment{position:relative;margin-bottom:16px}.cycle-segment-header{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.cycle-segment-label{font-weight:700;color:var(--ms-gray-120)}.cycle-segment-dates{font-size:12px;color:var(--ms-blue)}.cycle-segment-bar{position:relative;height:10px;margin-top:6px;background:#f5f7fa;border:1px solid #e5e7eb;border-radius:6px;overflow:hidden}.cycle-segment-fill{position:absolute;top:0;bottom:0;opacity:.9}.cycle-timeline-footer{display:flex;justify-content:space-between;margin-top:6px;font-size:12px;color:var(--ms-blue)}.cycle-milestones-compact{background:var(--ms-white);border:1px solid var(--ms-gray-40);border-radius:8px;padding:12px}.cycle-milestone-row{padding:8px 0;border-bottom:1px solid var(--ms-gray-30);transition:background .15s ease}.cycle-milestone-row:last-child{border-bottom:none}.cycle-milestone-row:hover{background:var(--ms-gray-10);border-radius:4px;margin:0 -8px;padding-left:8px;padding-right:8px}.cycle-milestone-row-header{display:grid;grid-template-columns:32px 1fr auto;gap:12px;align-items:center}.cycle-milestone-row-number{width:28px;height:28px;border-radius:6px;background:linear-gradient(135deg,var(--ms-blue) 0%,var(--ms-purple) 100%);color:var(--ms-white);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;flex-shrink:0}.cycle-milestone-row-content{display:flex;flex-direction:column;gap:4px;min-width:0;overflow:hidden}.cycle-milestone-row-title{font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ms-gray-120)}.cycle-milestone-row-dates{font-size:12px;color:var(--ms-gray-90)}.cycle-milestone-row-footer{display:flex;align-items:center;gap:12px}.cycle-milestone-row-code{font-family:Courier New,monospace;font-size:11px;font-weight:600;color:var(--ms-gray-70);background:var(--ms-gray-20);padding:3px 6px;border-radius:3px;white-space:nowrap}.cycle-milestone-row-duration{font-size:11px;font-weight:600;color:var(--ms-blue);white-space:nowrap}.progress-container{background:var(--ms-white);border-bottom:1px solid var(--ms-gray-30);padding:16px 0}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.progress-title{font-weight:600}.progress-bar{width:100%;height:4px;background:var(--ms-gray-30);border-radius:6x;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--ms-blue) 0%,var(--ms-purple) 100%);border-radius:6x;transition:width .3s ease}.footer{background:#ffffff1a;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid rgba(255,255,255,.15);box-shadow:0 -4px 16px #1f26871a;color:var(--ms-white);padding:16px 0;margin-top:40px}.footer-content{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}.footer-brand{display:flex;align-items:center;gap:8px}.footer-subtitle{opacity:.8;margin-top:2px}.footer-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.footer-copyright{opacity:.9}.footer-version{opacity:.7;font-family:Courier New,monospace}.footer-content-mobile{display:none}.footer-mobile-text{display:flex;align-items:center;gap:8px;flex-wrap:wrap}@media (max-width: 768px){.form-grid-2,.form-grid-3,.choice-grid-2,.choice-grid-3,.confidence-grid{grid-template-columns:1fr}.container{padding:0 16px}.choice-grid{flex-direction:column}.choice-option{max-width:none}.navigation-button-container--left,.navigation-button-container--right,.footer-content-desktop{display:none}.footer-content-mobile{display:flex;align-items:center;justify-content:space-between;gap:12px}.footer{padding:8px 0;margin-top:24px}.footer-content-mobile .header-logo{width:24px;height:24px;flex-shrink:0}.footer-mobile-text{flex:1;font-size:11px}.footer-content-mobile .footer-copyright,.footer-content-mobile .footer-version{font-size:11px;white-space:nowrap}.day-button{padding:6px 1px;font-size:9px;letter-spacing:.2px;border-width:1px}.day-buttons-row{gap:2px}}.day-buttons-row{display:flex;gap:4px;flex-wrap:wrap;justify-content:space-between}.day-button{flex:1;min-width:0;padding:8px 2px;border:2px solid var(--ms-gray-40);border-radius:12px;background:linear-gradient(145deg,#f0f0f0,#fff);box-shadow:3px 3px 6px #0000001a,-1px -1px 3px #fffc,inset -1px -1px 2px #0000000d;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;font-weight:600;font-size:10px;color:var(--ms-gray-130);text-transform:uppercase;letter-spacing:.3px}.day-button-text{display:block;position:relative;z-index:1}.day-button:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#ff6b351a,#ffaa351a);opacity:0;transition:opacity .2s ease}.day-button:hover{transform:translateY(-2px) scale(1.02);box-shadow:4px 4px 8px #00000026,-2px -2px 4px #ffffffe6,inset -1px -1px 2px #0000000d;border-color:var(--ms-gray-60)}.day-button:hover:before{opacity:1}.day-button:active{transform:translateY(0) scale(.98);box-shadow:1px 1px 3px #00000026,0 0 1px #fff9,inset 2px 2px 4px #0000001a}.day-button--selected{background:var(--primary-gradient);color:var(--ms-white);border-color:var(--ms-blue);box-shadow:4px 4px 10px #ff6b3566,inset 1px 1px 2px #ffffff4d,inset -1px -1px 2px #0003;transform:translateY(-1px)}.day-button--selected:hover{box-shadow:6px 6px 14px #ff6b3580,inset 1px 1px 2px #ffffff4d,inset -1px -1px 2px #0003;transform:translateY(-3px) scale(1.03)}.day-button--selected:before{background:linear-gradient(135deg,#fff3,#ffffff0d);opacity:1}.payment-container img[alt="UPI QR Code"]{border-radius:16px;box-shadow:0 8px 32px #00000026,0 0 0 4px #fffc,inset 0 0 0 1px #0000000d;transition:all var(--transition-base);animation:qrCodeFadeIn .6s ease-out}.payment-container img[alt="UPI QR Code"]:hover{transform:scale(1.02);box-shadow:0 12px 40px #0f172a33,0 0 0 4px #2563eb33,inset 0 0 0 1px #0000000d}@keyframes qrCodeFadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.payment-card{background:var(--card-gradient);backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);border:1px solid rgba(255,255,255,.4);border-radius:24px;padding:40px;text-align:center;margin-bottom:32px;box-shadow:var(--shadow-xl);position:relative;overflow:hidden;animation:cardFadeIn .6s ease-out}.payment-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--primary-gradient);opacity:.7}html{scroll-behavior:smooth}*:focus-visible{outline:2px solid var(--ms-blue);outline-offset:4px;border-radius:4px}.navigation-spinner{border-color:var(--ms-gray-40);border-top-color:var(--ms-blue);animation:spin .8s linear infinite}.info-card{background:linear-gradient(135deg,#eff6fff2,#f0fdfaf2);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(37,99,235,.3);border-radius:20px;padding:28px;margin-top:32px;box-shadow:0 8px 32px #2563eb26,inset 0 1px #fff9;transition:all var(--transition-base);animation:cardFadeIn .6s ease-out}.info-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #2563eb33,inset 0 1px #fff9}.progress-fill{height:100%;background:var(--primary-gradient);border-radius:6px;transition:width var(--transition-base);position:relative;overflow:hidden}.progress-fill:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:progressShine 2s infinite}@keyframes progressShine{0%{transform:translate(-100%)}to{transform:translate(100%)}}.footer{background:#ffffff1f;backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);border-top:1px solid rgba(255,255,255,.2);box-shadow:0 -4px 16px #1f26871a,inset 0 1px #fff3;color:var(--ms-white);padding:20px 0;margin-top:60px}.app-main{animation:pageFadeIn .4s ease-out}@keyframes pageFadeIn{0%{opacity:0}to{opacity:1}}.ms-select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%235f5d59' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px}.ms-select:hover{border-color:var(--ms-gray-60);box-shadow:var(--shadow-sm)}.toggle-switch{position:relative;width:52px;height:28px;background:var(--ms-gray-60);border-radius:14px;transition:all var(--transition-base);cursor:pointer;box-shadow:inset 0 2px 4px #0000001a}.toggle-switch--active{background:var(--ms-blue);box-shadow:inset 0 2px 4px #0000001a,0 0 0 4px #2563eb33}.toggle-slider{position:absolute;top:3px;left:3px;width:22px;height:22px;background:var(--ms-white);border-radius:50%;transition:all var(--transition-base);box-shadow:0 2px 6px #0003,0 1px 2px #0000001a}.toggle-slider--active{left:27px;box-shadow:0 2px 8px #00000040,0 1px 3px #00000026}.confidence-item{background:#ffffffb3;border-radius:12px;transition:all var(--transition-base);border:1px solid transparent}.confidence-item:hover{background:#fffffff2;border-color:var(--ms-gray-40);transform:translate(4px);box-shadow:var(--shadow-sm)}.complete-icon{background:var(--primary-gradient);box-shadow:var(--shadow-primary);animation:completeIconPulse 2s ease-in-out infinite}@keyframes completeIconPulse{0%,to{transform:scale(1);box-shadow:var(--shadow-primary)}50%{transform:scale(1.05);box-shadow:var(--shadow-primary-hover)}}@media (max-width: 768px){.step-card{padding:32px 24px;border-radius:20px}.step-icon{width:56px;height:56px;font-size:24px}.ms-button{padding:12px 24px;font-size:14px}.payment-card{padding:28px 20px}}
