.registration-container{min-height:100vh;background:linear-gradient(135deg,#fef4ea,#fff 50%,#fef4ea);padding:2rem 1rem;display:flex;align-items:flex-start;justify-content:center}.registration-card{width:100%;max-width:720px;background:#fff;border-radius:1rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);overflow:hidden}.registration-header{background:#fef4ea;padding:2rem;text-align:center;border-bottom:3px solid #fa8832}.registration-header h1{font-family:Space Grotesk,sans-serif;font-size:1.875rem;font-weight:700;color:#1a1a1a;margin:0}.registration-header p{color:#666;margin:.5rem 0 0;font-size:.875rem}.step-indicators{display:flex;align-items:flex-start;justify-content:space-between;padding:1.5rem 1rem;background:#fafafa;border-bottom:1px solid #eee;gap:.25rem;flex-wrap:wrap}.step-indicator{display:flex;flex-direction:column;align-items:center;gap:.5rem;flex-shrink:0;cursor:pointer;transition:all .2s ease}.step-indicator:hover{opacity:.8}.step-circle{width:2.5rem;height:2.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;background:#e5e5e5;color:#666;transition:all .3s ease}.step-indicator.active .step-circle{background:#fa8832;color:#fff;transform:scale(1.1)}.step-indicator.complete .step-circle{background:#22c55e;color:#fff}.step-label{font-size:.75rem;color:#666;text-align:center;max-width:80px}.step-indicator.active .step-label{color:#fa8832;font-weight:600}.step-indicator.complete .step-label{color:#22c55e}.step-connector{flex:1 1 auto;height:2px;background:#e5e5e5;margin-top:1.25rem;transition:background .3s ease}.step-connector.complete{background:#22c55e}@media (max-width:640px){.step-indicators{padding:1rem .5rem}.step-label{display:none}.step-connector{width:1.5rem}}.form-step{padding:2rem}.step-header{text-align:center;margin-bottom:2rem}.step-icon{width:3rem;height:3rem;color:#fa8832;margin-bottom:1rem}.step-header h2{font-family:Space Grotesk,sans-serif;font-size:1.5rem;font-weight:600;color:#1a1a1a;margin:0 0 .5rem}.step-header p{color:#666;margin:0;font-size:.875rem}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}@media (max-width:640px){.form-grid{grid-template-columns:1fr}}.form-field{display:flex;flex-direction:column;gap:.5rem}.form-field.full-width{grid-column:1/-1}.form-field>label{font-size:.875rem;font-weight:500;color:#333;display:flex;align-items:center;gap:.375rem}.required{color:#ef4444}.inline-icon{width:1rem;height:1rem;color:#666}.form-field input[type=date],.form-field input[type=email],.form-field input[type=tel],.form-field input[type=text],.form-field select,.form-field textarea{width:100%;padding:.75rem 1rem;font-size:1rem;border:1px solid #d1d5db;border-radius:.5rem;background:#fff;color:#1a1a1a;transition:all .2s ease}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:#fa8832;box-shadow:0 0 0 3px rgba(250,136,50,.1)}.form-field input.error,.form-field select.error,.form-field textarea.error{border-color:#ef4444}.form-field input.error:focus,.form-field select.error:focus,.form-field textarea.error:focus{box-shadow:0 0 0 3px rgba(239,68,68,.1)}.form-field input::-moz-placeholder,.form-field textarea::-moz-placeholder{color:#9ca3af}.form-field input::placeholder,.form-field textarea::placeholder{color:#9ca3af}.form-field 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' fill='none' viewBox='0 0 24 24' stroke='%236b7280'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:1.25rem;padding-right:2.5rem}.form-field textarea{resize:vertical;min-height:100px}.input-with-icon{position:relative}.input-with-icon .input-icon{position:absolute;left:.875rem;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none}.input-with-icon input{padding-left:2.75rem}.error-message{display:flex;align-items:center;gap:.375rem;font-size:.75rem;color:#ef4444}.field-hint{font-size:.75rem;color:#666}.form-divider{grid-column:1/-1;height:1px;background:#e5e5e5;margin:.5rem 0}.checkbox-label{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;font-size:.875rem;color:#333;line-height:1.5}.checkbox-label input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}.checkbox-custom{flex-shrink:0;width:1.25rem;height:1.25rem;border:2px solid #d1d5db;border-radius:.25rem;background:#fff;display:flex;align-items:center;justify-content:center;transition:all .2s ease;margin-top:.125rem}.checkbox-label input[type=checkbox]:checked+.checkbox-custom{background:#fa8832;border-color:#fa8832}.checkbox-label input[type=checkbox]:checked+.checkbox-custom:after{content:"";width:.375rem;height:.625rem;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);margin-bottom:2px}.checkbox-label input[type=checkbox]:focus+.checkbox-custom{box-shadow:0 0 0 3px rgba(250,136,50,.2)}.checkbox-label a{color:#fa8832;text-decoration:underline}.checkbox-label a:hover{color:#e07028}.consent-checkbox{padding:1rem;background:#fafafa;border-radius:.5rem;border:1px solid #e5e5e5}.info-banner{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:#fef3c7;border:1px solid #fcd34d;border-radius:.5rem;margin-bottom:1.5rem}.info-banner svg{flex-shrink:0;color:#d97706}.info-banner p{margin:0;font-size:.875rem;color:#92400e}.form-section{margin-bottom:2rem}.form-section:last-child{margin-bottom:0}.form-section h3{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;color:#333;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:1px solid #e5e5e5}.form-section h3 svg{color:#fa8832}.consent-list{display:flex;flex-direction:column;gap:1rem}.form-navigation{display:flex;align-items:center;padding:1.5rem 2rem;border-top:1px solid #e5e5e5;background:#fafafa}.nav-spacer{flex:1}.btn-primary,.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;border-radius:.5rem;cursor:pointer;transition:all .2s ease;border:none}.btn-primary{background:#fa8832;color:#fff}.btn-primary:hover{background:#e07028}.btn-primary:disabled{background:#d1d5db;cursor:not-allowed}.btn-secondary{background:transparent;color:#666;border:1px solid #d1d5db}.btn-secondary:hover{background:#f3f4f6;color:#333}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-submit{min-width:180px}.spinner{animation:spin 1s linear infinite}.emoji-preview-container{display:flex;flex-direction:column;align-items:center;margin-bottom:2rem}.emoji-preview{width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg,#fef4ea,#fff);border:3px solid #fa8832;display:flex;align-items:center;justify-content:center;font-size:4rem;box-shadow:0 4px 12px rgba(250,136,50,.2);transition:transform .2s ease}.emoji-preview:hover{transform:scale(1.05)}.emoji-preview-hint{margin-top:.75rem;font-size:.875rem;color:#666}.emoji-categories{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;justify-content:center}.emoji-category-tab{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;color:#666;background:#f3f4f6;border:1px solid #e5e5e5;border-radius:2rem;cursor:pointer;transition:all .2s ease}.emoji-category-tab:hover{background:#e5e5e5;color:#333}.emoji-category-tab.active{background:#fa8832;color:#fff;border-color:#fa8832}.emoji-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.75rem;margin-bottom:1.5rem}@media (max-width:480px){.emoji-grid{grid-template-columns:repeat(4,1fr)}}.emoji-button{width:100%;aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:2rem;background:#fff;border:2px solid #e5e5e5;border-radius:.75rem;cursor:pointer;transition:all .2s ease}.emoji-button:hover{background:#fef4ea;border-color:#fa8832;transform:scale(1.1)}.emoji-button.selected{background:#fef4ea;border-color:#fa8832;box-shadow:0 0 0 3px rgba(250,136,50,.2)}.emoji-note{text-align:center;font-size:.875rem;color:#666;background:#f9fafb;padding:1rem;border-radius:.5rem;border:1px solid #e5e5e5}.success-emoji{font-size:5rem;margin-bottom:1rem;animation:bounce .6s ease}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.confirmation-step{padding-bottom:1rem}.confirmation-emoji-preview{display:flex;flex-direction:column;align-items:center;padding:1.5rem;background:linear-gradient(135deg,#fef4ea,#fff);border-radius:1rem;margin-bottom:2rem;border:1px solid #e5e5e5}.emoji-preview.small{width:80px;height:80px;font-size:2.5rem}.confirmation-name{font-size:1.25rem;font-weight:600;color:#1a1a1a;margin:.75rem 0 .5rem}.confirmation-section{background:#fff;border:1px solid #e5e5e5;border-radius:.75rem;margin-bottom:1rem;overflow:hidden}.confirmation-section-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;background:#fafafa;border-bottom:1px solid #e5e5e5}.confirmation-section-title{display:flex;align-items:center;gap:.5rem}.confirmation-section-title svg{color:#fa8832}.confirmation-section-title h3{margin:0;font-size:1rem;font-weight:600;color:#333}.confirmation-section-content{padding:1rem 1.25rem;display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem 1.5rem}@media (max-width:640px){.confirmation-section-content{grid-template-columns:1fr}}.confirmation-field{display:flex;flex-direction:column;gap:.25rem}.confirmation-label{font-size:.75rem;font-weight:500;color:#666;text-transform:uppercase;letter-spacing:.025em}.confirmation-value{font-size:.9375rem;color:#1a1a1a;word-break:break-word}.edit-button{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;color:#fa8832;background:transparent;border:1px solid #fa8832;border-radius:.375rem;cursor:pointer;transition:all .2s ease}.edit-button:hover{background:#fa8832;color:#fff}.edit-button.small{padding:.25rem .5rem;font-size:.75rem}.confirmation-notice{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:#ecfdf5;border:1px solid #6ee7b7;border-radius:.5rem;margin-top:1.5rem}.confirmation-notice svg{flex-shrink:0;color:#059669}.confirmation-notice p{margin:0;font-size:.875rem;color:#065f46;line-height:1.5}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.progress-bar{height:4px;background:#e5e5e5}.progress-fill{height:100%;background:linear-gradient(90deg,#fa8832,#f97316);transition:width .3s ease}.success-screen{text-align:center;padding:3rem 2rem;max-width:500px;margin:0 auto}.success-icon{width:5rem;height:5rem;background:#dcfce7;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem}.success-icon svg{color:#22c55e}.success-screen h2{font-family:Space Grotesk,sans-serif;font-size:1.5rem;font-weight:600;color:#1a1a1a;margin:0 0 1rem}.success-screen>p{color:#666;margin:0 0 2rem;line-height:1.6}.success-info{background:#f3f4f6;border-radius:.5rem;padding:1.5rem;text-align:left;margin-bottom:2rem}.success-info h3{font-size:.875rem;font-weight:600;color:#333;margin:0 0 .75rem}.success-info ol{margin:0;padding-left:1.25rem}.success-info li{font-size:.875rem;color:#666;margin-bottom:.5rem}.success-info li:last-child{margin-bottom:0}.success-screen .btn-primary{text-decoration:none}@media (max-width:640px){.registration-container{padding:1rem .5rem}.registration-card{border-radius:.75rem}.registration-header{padding:1.5rem 1rem}.registration-header h1{font-size:1.5rem}.form-step{padding:1.5rem 1rem}.step-header h2{font-size:1.25rem}.form-navigation{padding:1rem;flex-wrap:wrap;gap:.75rem}.nav-spacer{display:none}.btn-primary,.btn-secondary{flex:1;min-width:auto}.success-screen{padding:2rem 1rem}}