.progress-bar-container{padding:1rem 1.5rem}.progress-bar-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.progress-bar-title{font-size:.875rem;font-weight:600;color:#4a5568}.progress-bar-percentage{font-size:.875rem;font-weight:700;color:#38a169}.progress-bar-track{position:relative;height:12px;background-color:#e2e8f0;border-radius:9999px;box-shadow:inset 0 2px 4px #0000001a}.progress-bar-fill{position:absolute;height:100%;border-radius:9999px;background-color:#48bb78;transition:width .5s ease-out;box-shadow:0 0 10px #48bb78b3,0 0 20px #48bb7880}.progress-bar-fill:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:9999px;background:linear-gradient(to bottom,#ffffff4d,#ffffff0d)}.progress-bar-wrapper{display:flex;align-items:center;gap:.75rem}.progress-bar-percentage{min-width:40px}.countdown-text{font-size:.75rem;color:#4a5568}.gift-icon-wrapper{animation:shake 1.5s cubic-bezier(.36,.07,.19,.97) both infinite;transform-origin:center}@keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-2px,0,0)}40%,60%{transform:translate3d(2px,0,0)}}.main-content-background{background-color:#f7fafc;padding:1rem;border-radius:.5rem;margin:1rem 0}.radio-options-container{display:flex;flex-direction:column;gap:.75rem;margin-top:1.5rem}.radio-option-label{display:flex;align-items:center;gap:1rem;padding:1.25rem;border:1px solid #e2e8f0;border-radius:.75rem;cursor:pointer;transition:all .2s ease-in-out;background-color:#fff}.radio-option-label:hover{border-color:#a0aec0;background-color:#f7fafc}.radio-option-input:checked+.radio-option-label{border-color:#48bb78;background-color:#f0fff4;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.radio-option-input{position:absolute;opacity:0;width:0;height:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.radio-option-icon{flex-shrink:0;width:1.5rem;height:1.5rem;margin-top:2px;color:#4a5568}.radio-option-text-wrapper{display:flex;flex-direction:column;align-items:flex-start;line-height:1.3}.radio-option-name{font-weight:600;color:#2d3748}.radio-option-description{font-size:.875rem;color:#718096}.radio-option-checkmark{display:none}.other-input-wrapper{margin-top:1rem;padding:0 .5rem}.other-input{width:100%;padding:1rem;border:1px solid #e2e8f0;border-radius:.5rem;font-size:1rem}.other-input:focus{outline:none;border-color:#48bb78;box-shadow:0 0 0 2px #48bb7833}*{box-sizing:border-box;margin:0;padding:0}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.message-bubble{margin:.5rem 0;padding:.8rem 1.5rem;border-radius:1rem;max-width:80%;word-wrap:break-word;position:relative;animation:slideIn .3s ease-out;display:flex;align-items:center}.user-message{background:linear-gradient(145deg,#f1f1f1,#e8e8e8);color:#1e293b;border-radius:1rem 0 1rem 1rem;margin-left:auto;box-shadow:0 2px 4px #0000001a}.user-message:after{content:"";position:absolute;top:-4px;right:-4px;width:0;height:0;border:4px solid transparent;border-left-color:#e8e8e8}.bot-message{background:linear-gradient(145deg,#dcf8c6,#d4f4cd);color:#1e293b;margin-right:auto;border-radius:1rem 1rem 1rem 0;box-shadow:0 2px 4px #0000001a}.bot-message:after{content:"";position:absolute;bottom:-4px;left:-4px;width:0;height:0;border:4px solid transparent;border-right-color:#d4f4cd}.input-field{flex-grow:1;padding:.8rem 1.5rem;border:1px solid #e2e8f0;border-radius:25px;margin-right:1rem;background-color:#fffc;transition:all .2s ease-out}.input-field:focus{outline:none;border-color:#475569;background-color:#ffffffe6}.send-button{background:#475569;color:#fff;border:none;padding:.8rem;border-radius:50%;cursor:pointer;transition:all .2s ease-out;box-shadow:0 2px 4px #0000001a}.send-button:hover{background:#334155}.modal-container{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:50;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}@media (max-width: 768px){.message-bubble{max-width:85%}.input-area{padding:.5rem}.message-bubble{padding:.6rem 1.2rem}}
