@use '../atoms/variables' as *; .register-body { min-height: 100vh; background: var(--color-bg); display: flex; align-items: flex-start; justify-content: center; padding: $space-10 $space-4; } // ─── Wrapper ────────────────────────────────────────────────────────────────── .register-page { width: 100%; max-width: 580px; } .register-card { background: $color-card-white; border-radius: $radius-xl; padding: $space-10 $space-12; box-shadow: $shadow-card; } .register-card__brand { text-align: center; margin-bottom: $space-6; a { font-size: $font-size-base; font-weight: $font-weight-bold; color: var(--color-primary); text-decoration: none; letter-spacing: 0.02em; } } .register-card__title { font-size: $font-size-xl; font-weight: $font-weight-bold; color: $color-text-dark; text-align: center; margin-bottom: $space-2; } .register-card__sub { font-size: $font-size-sm; color: $color-text-muted; text-align: center; margin-bottom: $space-8; } // ─── Errors ─────────────────────────────────────────────────────────────────── .register-errors { &:not(:empty) { background: rgba($color-error, 0.07); border: 1px solid rgba($color-error, 0.25); border-radius: $radius-sm; color: $color-error; font-size: $font-size-sm; padding: $space-3 $space-4; margin-bottom: $space-6; p { margin: 0; line-height: 1.6; } p + p { margin-top: $space-1; } } } // ─── Fieldsets ──────────────────────────────────────────────────────────────── .register-fieldset { border: none; padding: 0; margin: 0 0 $space-8; } .register-fieldset__legend { font-size: $font-size-sm; font-weight: $font-weight-bold; color: $color-text-muted; text-transform: uppercase; letter-spacing: 0.06em; margin-bottom: $space-5; display: block; } // ─── Einzelnes Feld ─────────────────────────────────────────────────────────── .register-field { margin-bottom: $space-5; &:last-child { margin-bottom: 0; } } .register-field__label { display: block; font-size: $font-size-sm; color: $color-text-muted; margin-bottom: $space-2; } .register-field__hint { margin-top: $space-2; font-size: $font-size-sm; color: $color-text-muted; } .register-field__slug { color: $color-primary; font-family: monospace; font-size: $font-size-sm; } // ─── Zweispaltig ────────────────────────────────────────────────────────────── .register-field-row { display: grid; grid-template-columns: 1fr 1fr; gap: $space-4; margin-bottom: $space-5; } // ─── Actions ────────────────────────────────────────────────────────────────── .register-actions { margin-top: $space-8; } .register-actions__submit { width: 100%; padding: $space-4; font-size: $font-size-md; &:disabled { opacity: 0.6; cursor: not-allowed; } } .register-actions__login { text-align: center; margin-top: $space-4; font-size: $font-size-sm; color: $color-text-muted; a { color: var(--color-primary); text-decoration: none; &:hover { text-decoration: underline; } } } // ─── Erfolgs-State ──────────────────────────────────────────────────────────── .register-success { text-align: center; padding: $space-6 0; } .register-success__icon { width: 56px; height: 56px; border-radius: 50%; background: $color-success-bg; color: $color-success; font-size: 1.6rem; font-weight: $font-weight-bold; display: flex; align-items: center; justify-content: center; margin: 0 auto $space-6; &--error { background: rgba($color-error, 0.08); color: $color-error; } } .register-success__title { font-size: $font-size-xl; font-weight: $font-weight-bold; color: $color-text-dark; margin-bottom: $space-4; } .register-success__text { font-size: $font-size-md; color: $color-text-base; line-height: $line-height-base; margin-bottom: $space-3; } .register-success__hint { font-size: $font-size-sm; color: $color-text-muted; line-height: $line-height-base; }