.rsvp-form-container{width:100%}.guest-search-section{margin-bottom:2rem;padding:2rem;background:linear-gradient(180deg,#ff6b35,orange,gold);border:5px solid #ff0000;border-radius:0;box-shadow:0 8px 16px #0000004d}.search-title{font-size:2rem;color:#ff0;margin-bottom:.5rem;text-align:center;font-weight:900;text-transform:uppercase;text-shadow:-2px -2px 0 #000,2px -2px 0 #000,-2px 2px 0 #000,2px 2px 0 #000,0 0 10px rgba(0,0,0,.5);letter-spacing:2px}.search-description{text-align:center;margin-bottom:1.5rem;color:#000;font-weight:600;text-shadow:1px 1px 2px rgba(255,255,255,.5)}.search-form{display:flex;gap:.5rem;margin-bottom:1.5rem}.search-input{flex:1;padding:.8rem;background:#fff;border:3px solid #ff0000;border-radius:0;color:#000;font-family:Comic Sans MS;font-size:1rem;font-weight:600}.search-input:focus{outline:none;border-color:#ff6b35;box-shadow:0 0 10px #ff6b3580}.search-results{margin-top:1.5rem}.guest-found,.guest-not-found{padding:1.5rem;margin-bottom:1rem}.guest-found h4,.guest-not-found h4{margin-bottom:1rem;font-size:1.3rem}.guest-found p,.guest-not-found p{margin-bottom:.5rem}.plus-one-notice{color:var(--color-green);font-weight:700;margin-top:1rem}.already-rsvpd{margin-top:1rem;padding:1rem;background:#303;border-radius:0}.contact-note{font-size:.9rem;color:var(--color-cyan);margin-top:.5rem}.modify-rsvp-section{margin-bottom:2rem}.modify-box{padding:2rem;text-align:center}.modify-box h3{font-size:1.8rem;margin-bottom:1rem}.modify-box p{margin-bottom:1.5rem;font-size:1.1rem}.existing-rsvp-info{padding:1.5rem;margin-bottom:2rem;background:linear-gradient(135deg,#667eea,#764ba2);border:3px solid var(--color-magenta)}.existing-rsvp-info h4{font-size:1.5rem;margin-bottom:1rem}.existing-rsvp-info p{margin-bottom:.5rem;font-size:1.1rem}.edit-mode-notice{padding:1rem;margin-bottom:1.5rem;text-align:center;background:linear-gradient(90deg,#ff6b35,orange);border:3px solid var(--color-yellow)}.edit-mode-notice p{margin:0;font-size:1.2rem;font-weight:700}.skip-search{font-size:.9rem;font-style:italic;color:#fff;font-weight:600}.skip-search{text-align:center;margin-top:1.5rem;padding-top:1.5rem;border-top:2px dashed #ff0000}.skip-button{background:none;border:none;color:red;text-decoration:underline;cursor:pointer;font-family:Comic Sans MS;font-size:1rem;padding:.5rem;font-weight:700}.skip-button:hover{color:#ff6b35}.form-divider{height:2px;background:linear-gradient(to right,transparent,var(--color-cyan),transparent);margin:2rem 0}.rsvp-form{display:flex;flex-direction:column;gap:1.5rem;max-width:100%}.form-group{display:flex;flex-direction:column;gap:.5rem;animation:fadeIn .3s ease-out}.form-label{font-weight:700;color:var(--color-yellow);font-size:1rem;display:flex;align-items:center;gap:.5rem}.form-label.required:after{content:"*";color:var(--color-red);font-size:1.2rem}.form-input,.form-textarea{padding:.75rem;font-size:1rem;font-family:inherit;background:#000;border:2px solid var(--color-cyan);border-radius:0;color:var(--color-white);transition:all .3s ease}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--color-magenta);box-shadow:0 0 10px #ff00ff80;background:#000}.form-input::placeholder,.form-textarea::placeholder{color:#ffffff80}.form-input:disabled,.form-textarea:disabled{opacity:.6;cursor:not-allowed}.form-input.error,.form-textarea.error{border-color:var(--color-red);background:#300}.form-textarea{resize:vertical;min-height:80px;line-height:1.5}.radio-group{display:flex;flex-direction:column;gap:1rem;padding:1rem;background:#033;border-radius:0;border:2px solid var(--color-cyan)}.radio-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;padding:.75rem;background:#000;border:2px solid transparent;border-radius:0;transition:all .3s ease}.radio-label:hover{background:#033;border-color:var(--color-cyan)}.radio-label input[type=radio]{width:20px;height:20px;cursor:pointer;accent-color:var(--color-magenta)}.radio-text{font-size:1.1rem;color:var(--color-white)}.checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;padding:1rem;background:#303;border:2px solid var(--color-magenta);border-radius:0;transition:all .3s ease}.checkbox-label:hover{background:#303;box-shadow:0 0 10px #ff00ff4d}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--color-magenta)}.checkbox-text{font-size:1.1rem;color:var(--color-white);font-weight:700}.form-error{color:var(--color-red);font-size:.9rem;display:flex;align-items:center;gap:.5rem;padding:.5rem;background:#300;border-radius:0;border-left:3px solid var(--color-red)}.form-error:before{content:"⚠️"}.submit-error{padding:1rem;background:#300;border:2px solid var(--color-red);border-radius:0;color:var(--color-white);text-align:center}.form-actions{display:flex;justify-content:center;margin-top:1rem}.submit-button{padding:1rem 3rem;font-size:1.2rem;font-weight:700;font-family:Comic Sans MS;background:linear-gradient(180deg,var(--color-magenta),#8000ff);color:var(--color-yellow);border:3px outset var(--color-magenta);border-radius:0;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px;box-shadow:0 4px 8px #0000004d}.submit-button:hover:not(:disabled){background:linear-gradient(180deg,#ff00ff,var(--color-magenta));transform:translateY(-2px);box-shadow:0 6px 12px #ff00ff80}.submit-button:active:not(:disabled){transform:translateY(0);border-style:inset;box-shadow:inset 0 2px 4px #00000080}.submit-button:disabled{opacity:.6;cursor:not-allowed;background:linear-gradient(180deg,gray,#606060)}.spinner{display:inline-block;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.form-note{text-align:center;font-size:.9rem;color:#ffffffb3;font-style:italic;margin-top:.5rem}.required-indicator{color:var(--color-red);font-size:1.2rem;font-weight:700}@media(max-width:768px){.rsvp-form{gap:1.25rem}.form-label{font-size:.95rem}.form-input,.form-textarea{padding:.65rem;font-size:.95rem}.radio-label,.checkbox-label{padding:.75rem}.radio-text,.checkbox-text{font-size:1rem}.submit-button{padding:.875rem 2rem;font-size:1.1rem;width:100%}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.rsvp-form-loading,.rsvp-form-error,.rsvp-form-success{text-align:center;padding:3rem 2rem;animation:fadeIn .5s ease-out}.rsvp-form-loading .loading-spinner{font-size:4rem;animation:spin 2s linear infinite;margin-bottom:1rem}.rsvp-form-loading p{font-size:1.3rem;color:var(--color-cyan)}.rsvp-form-error{background:#ff00001a;border:3px solid var(--color-red);border-radius:0}.rsvp-form-error .error-title{font-size:2rem;color:var(--color-red);margin-bottom:1rem;text-shadow:-1px -1px 0 #000,1px -1px 0 #000,-1px 1px 0 #000,1px 1px 0 #000}.rsvp-form-error .error-text{font-size:1.2rem;color:var(--color-white);margin-bottom:1rem}.rsvp-form-error .error-note{font-size:1rem;color:#fffc;margin-bottom:2rem}.rsvp-form-error .error-actions{margin-top:2rem}.rsvp-form-success .success-icon{font-size:5rem;margin-bottom:1rem;animation:bounce 1s ease-in-out}.rsvp-form-success .success-title{font-size:2.5rem;color:var(--color-green);margin-bottom:1rem;text-shadow:-2px -2px 0 #000,2px -2px 0 #000,-2px 2px 0 #000,2px 2px 0 #000}.rsvp-form-success .success-message{font-size:1.3rem;margin-bottom:1rem}.rsvp-form-success .success-note{font-size:1.1rem;color:var(--color-magenta);margin-bottom:2rem}.rsvp-form-success .success-actions{margin-top:2rem}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.form-notice{padding:1rem;margin-bottom:1.5rem;background:linear-gradient(90deg,#667eea,#764ba2);border:3px solid var(--color-magenta);border-radius:0;text-align:center}.form-notice p{margin:0;font-size:1.1rem;font-weight:600;color:var(--color-white)}.form-help{font-size:.9rem;color:#ffffffb3;font-style:italic}
