.register-page { max-width: 46rem; margin: 0 auto; padding: 2rem 1rem 4rem; }
.register-card { padding: clamp(1.25rem, 4vw, 2.5rem); }
.register-field { display: grid; gap: .45rem; margin-bottom: 1.1rem; }
.register-field label { color: #c9a227; font-weight: 700; }
.register-field input { box-sizing: border-box; width: 100%; min-height: 2.8rem; padding: .7rem .8rem; border: 1px solid rgba(201,162,39,.55); border-radius: .35rem; background: rgba(4,18,15,.8); color: #f4eed8; font: inherit; }
.register-field small, .register-note { color: #c4c9bd; line-height: 1.5; }
.register-terms { display: flex; gap: .65rem; align-items: flex-start; margin: 1.25rem 0; color: #e8eadf; line-height: 1.5; }
.register-terms input { margin-top: .25rem; accent-color: #c9a227; }
.register-submit { width: 100%; min-height: 2.9rem; }
.register-message, .register-status { min-height: 1.4rem; margin: .7rem 0 0; font-size: .9rem; line-height: 1.5; }
.register-status[data-state="available"], .register-message[data-state="success"] { color: #9ed6a1 !important; }
.register-status[data-state="taken"], .register-message[data-state="error"] { color: #f0a6a6 !important; }
.register-note { margin: 1.2rem 0 0; text-align: center; }
@media (max-width: 520px) { .register-page { padding-inline: .75rem; } .register-card { padding: 1rem; } }
