.profile-hero{background:linear-gradient(135deg,#f8fafc,#e2e8f0)}.save-btn{background:#d1d5db;color:#6b7280}.save-btn:not(:disabled){background:#2563eb;color:#fff}.save-btn:not(:disabled):hover{background:#1d4ed8}.completion-badge{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e}.completion-badge.complete{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46}.form-label{display:block;font-size:.875rem;font-weight:600;color:#374151;margin-bottom:.5rem}.form-input{width:100%;padding:.75rem 1rem;border:2px solid #e5e7eb;border-radius:.75rem;font-size:.9375rem;transition:all .2s;background:#fff}.form-input:focus{outline:none;border-color:#0a5eb0;box-shadow:0 0 0 3px #0a5eb01a}.form-input:disabled{background:#f9fafb;color:#9ca3af}.form-field.has-value .form-input{border-color:#10b981}.form-field.has-value .field-status:after{content:"✓";position:absolute;right:1rem;top:50%;transform:translateY(-50%);color:#10b981;font-weight:700}.form-field{position:relative}.field-status{position:absolute;right:0;top:2.25rem;height:calc(100% - 2.25rem);display:flex;align-items:center;pointer-events:none}.interest-option{display:block;cursor:pointer}.interest-option input{display:none}.interest-content{display:flex;align-items:center;gap:.75rem;padding:1rem;border:2px solid #e5e7eb;border-radius:.75rem;transition:all .2s;background:#fff}.interest-content i{width:24px;text-align:center;color:#9ca3af;transition:color .2s}.interest-option:hover .interest-content{border-color:#0a5eb0;background:#f0f7ff}.interest-option input:checked+.interest-content{border-color:#0a5eb0;background:#e0f0ff}.interest-option input:checked+.interest-content i{color:#0a5eb0}.availability-option{display:inline-flex;align-items:center;cursor:pointer}.availability-option input{display:none}.availability-option span{padding:.5rem 1rem;border:2px solid #e5e7eb;border-radius:9999px;font-size:.875rem;font-weight:500;transition:all .2s;background:#fff}.availability-option:hover span{border-color:#0a5eb0}.availability-option input:checked+span{border-color:#0a5eb0;background:#0a5eb0;color:#fff}.bg-campaign-blue{background-color:#0a5eb0}.bg-campaign-blue-dark{background-color:#084a8a}.text-campaign-blue{color:#0a5eb0}.text-campaign-red{color:#c60c30}.hover\:bg-campaign-blue-dark:hover{background-color:#084a8a}#chicagoCelebration{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;pointer-events:none}#chicagoCelebration.fade-out{animation:celebration-fade .5s ease-out forwards}.celebration-backdrop{position:absolute;inset:0;background:#ffffffd9;animation:backdrop-in .3s ease-out forwards}.flagpole-container{position:fixed;left:50%;top:80px;bottom:0;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;z-index:2}.flagpole{width:6px;height:100%;background:linear-gradient(90deg,#a0a0a0,#d4d4d4,#a0a0a0);border-radius:3px 3px 0 0;box-shadow:2px 0 4px #0003}.flagpole-ball{position:absolute;top:-8px;width:16px;height:16px;background:linear-gradient(135deg,#fcd34d,#d97706);border-radius:50%;box-shadow:0 2px 4px #0000004d}.flagpole-base{position:absolute;bottom:0;width:40px;height:20px;background:linear-gradient(180deg,#6b7280,#4b5563);border-radius:4px 4px 0 0}.flag-wrapper{position:absolute;top:10px;left:10px;animation:flag-raise-smooth 3s cubic-bezier(.25,.1,.25,1) forwards}.chicago-flag{width:180px;height:108px;display:flex;flex-direction:column;box-shadow:3px 3px 12px #00000040;animation:flag-wave .4s ease-in-out infinite;animation-delay:3s;transform-origin:left center}.flag-stripe{flex:1}.flag-stripe.blue-stripe{background:#b3ddf2}.flag-stripe.white-stripe{background:#fff;display:flex;align-items:center;justify-content:space-around;flex:2}.chi-star{color:#c60c30;font-size:20px;line-height:1}.celebration-text{position:fixed;top:45%;left:50%;transform:translate(-50%,-50%);z-index:3;opacity:0;animation:text-reveal .4s ease-out forwards;animation-delay:3.1s;white-space:nowrap}.worm-letter{font-size:2.8rem;font-weight:900;color:#1e3a5f;text-shadow:2px 2px 0 #b3ddf2,-1px -1px 0 #b3ddf2,1px -1px 0 #b3ddf2,-1px 1px 0 #b3ddf2;display:inline-block;animation:worm-wiggle 1.5s ease-in-out infinite;animation-delay:calc(3.3s + var(--i) * .08s)}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes flag-raise-smooth{0%{transform:translateY(calc(100vh - 200px));animation-timing-function:cubic-bezier(.4,0,.6,1)}12%{transform:translateY(calc(100vh - 280px));animation-timing-function:cubic-bezier(.2,.4,.4,1)}18%{transform:translateY(calc(100vh - 300px));animation-timing-function:cubic-bezier(.4,0,.6,1)}30%{transform:translateY(calc(100vh - 380px));animation-timing-function:cubic-bezier(.2,.4,.4,1)}36%{transform:translateY(calc(100vh - 400px));animation-timing-function:cubic-bezier(.4,0,.6,1)}48%{transform:translateY(calc(100vh - 480px));animation-timing-function:cubic-bezier(.2,.4,.4,1)}54%{transform:translateY(calc(100vh - 500px));animation-timing-function:cubic-bezier(.4,0,.6,1)}66%{transform:translateY(calc(100vh - 580px));animation-timing-function:cubic-bezier(.2,.4,.4,1)}72%{transform:translateY(calc(100vh - 600px));animation-timing-function:cubic-bezier(.4,0,.6,1)}84%{transform:translateY(calc(100vh - 670px));animation-timing-function:cubic-bezier(.2,.4,.6,1)}92%{transform:translateY(calc(100vh - 690px));animation-timing-function:cubic-bezier(.1,.4,.3,1)}to{transform:translateY(0)}}@keyframes flag-wave{0%,to{transform:skewY(0)}50%{transform:skewY(2deg)}}@keyframes text-reveal{0%{opacity:0;transform:translate(-50%,-50%) scale(.5)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes worm-wiggle{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-12px) rotate(-5deg)}50%{transform:translateY(0) rotate(0)}75%{transform:translateY(8px) rotate(5deg)}}@keyframes celebration-fade{to{opacity:0}}
