/* rally/templates/portal/register.html — page styles.
 *
 * Moved out of the template. Declarations are as they were;
 * anything here that also exists in a shared stylesheet is a deliberate
 * or accidental override, and `scripts/css-redefinition-report.py`
 * lists them.
 */

@layer app {
.password-requirements {
    background: var(--color-gray-50);
    border: 1px solid var(--color-gray-200);
    border-radius: var(--radius-md);
    padding: var(--spacing-2) var(--spacing-3);
    margin-top: var(--spacing-2);
    font-size: var(--font-size-xs);
    color: var(--color-gray-600);
    display: none;
}
.password-requirements.visible { display: block; }
.password-requirements ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.password-requirements li {
    padding: var(--spacing-1) 0;
    transition: color var(--transition-fast);
}
.password-requirements li::before {
    content: "\25CB ";
    color: var(--color-text-muted);
}
.password-requirements li.met { color: var(--color-success-text); }
.password-requirements li.met::before {
    content: "\2713 ";
    color: var(--color-success-text);
}
.password-requirements li.unmet { color: var(--color-danger-text); }
.password-requirements li.unmet::before {
    content: "\2717 ";
    color: var(--color-danger-text);
}
.password-requirements .sub-list {
    padding-left: var(--spacing-4);
}
.email-status {
    font-size: var(--font-size-xs);
    margin-top: var(--spacing-1);
}
.email-status.invalid { color: var(--color-danger-text); }
/* A link inside a sentence must not rely on color alone (WCAG 1.4.1). */
.auth-link a { text-decoration: underline; }
}

/* Date of birth: three boxes that pass focus along (js/date-of-birth.js). */
@layer app {
.dob-fieldset {
    border: 0;
    margin: 0;
    padding: 0;
    min-width: 0;
}
.dob-fieldset legend {
    padding: 0;
    margin-bottom: var(--spacing-1);
    font-weight: var(--font-weight-medium);
}
.dob-fields {
    display: flex;
    gap: var(--spacing-3);
}
.dob-part { flex: 0 0 4.5rem; }
.dob-part-year { flex-basis: 6rem; }
.dob-part label {
    display: block;
    font-size: var(--font-size-xs);
    margin-bottom: var(--spacing-1);
}
}
