.scratch-card{background:linear-gradient(135deg,#fff,#f8f9fa);border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,.1);margin:2rem auto;max-width:500px;overflow:hidden;padding:2rem;position:relative}.card-content{position:relative;z-index:2}.card-heading{color:#1a365d;font-size:2rem;font-weight:700;margin-bottom:.5rem;text-align:center}.card-subheading{color:#4a5568;font-size:1rem;margin-bottom:2rem;text-align:center}.form{align-items:flex-start;gap:1.5rem}.form,.form-group{display:flex;flex-direction:column}.form-group{gap:.5rem}.form-label{color:#4a5568;font-size:.875rem;font-weight:500}.code-input{background:#fff;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;padding:.75rem 1rem;transition:all .3s ease}.code-input:focus{border-color:#4299e1;box-shadow:0 0 0 3px rgba(66,153,225,.2);outline:none}.error-message{color:#e53e3e;font-size:.75rem;min-height:1rem}.btn{background:linear-gradient(135deg,#4299e1,#3182ce);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:1rem;padding:.75rem 1.5rem;transition:all .3s ease}.btn:hover{box-shadow:0 4px 12px rgba(66,153,225,.3);transform:translateY(-2px)}.btn:active{transform:translateY(0)}.result-card{animation:fadeIn .5s ease;border-radius:16px;margin:0 auto;max-width:600px;padding:2rem;text-align:center}.result-card.success{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff}.result-card.failure{background:linear-gradient(135deg,#f56565,#e53e3e);color:#fff}.result-icon{margin-bottom:1rem}.result-icon svg{height:48px;width:48px;stroke:#fff}.result-heading{font-size:1.5rem;font-weight:700;margin-bottom:.5rem}.result-text{font-size:1.125rem;margin-bottom:.5rem}.prize-text{font-size:1.25rem;font-weight:600;margin-top:1rem}.sample-codes{color:#718096;font-size:.875rem;margin-top:1.5rem;text-align:center}.confetti-container{height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:1000}.confetti{animation:confetti-fall 3s ease-in-out forwards;height:10px;opacity:0;position:absolute;width:10px}@keyframes confetti-fall{0%{opacity:1;transform:translateY(-100vh) rotate(0deg)}to{opacity:0;transform:translateY(100vh) rotate(1turn)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:640px){.scratch-card{margin:1rem;padding:1.5rem}.card-heading{font-size:1.5rem}.card-subheading{font-size:.875rem}}