/* Register View Styles - Default Baseline Theme */

.register-card {
    border-radius: 1rem;
    overflow: hidden;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.register-card .card-header {
    background: linear-gradient(135deg, var(--bs-primary, #0d6efd) 0%, var(--bs-primary-dark, #0a58ca) 100%);
    border-bottom: none;
}

.register-card .card-header h1,
.register-card .card-header h2,
.register-card .card-header h5 {
    letter-spacing: -0.01em;
}

.register-card .input-group-text {
    background-color: var(--bs-light, #f8f9fa);
    color: var(--bs-secondary, #54595f);
    min-width: 44px;
    justify-content: center;
}

.register-card .form-control:focus {
    border-color: var(--bs-primary, #0d6efd);
    box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.15);
}

.register-card .toggle-password {
    cursor: pointer;
    user-select: none;
    transition: color 0.15s ease;
}

.register-card .toggle-password:hover {
    color: var(--bs-primary, #0d6efd);
}

/* Password Strength Indicator */
.progress-strength {
    height: 6px;
    border-radius: 3px;
    background-color: rgba(0, 0, 0, 0.08);
}

.progress-strength .progress-bar {
    width: 100%;
    transform-origin: left;
    transform: scaleX(0);
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), background-color 0.3s ease;
}

.criteria-item {
    font-size: 0.8125rem;
    line-height: 1.3;
}

.criteria-icon {
    font-size: 0.95rem;
    transition: transform 0.2s ease;
    flex-shrink: 0;
}

/* CAPTCHA Refresh Styles */
.captcha-container {
    display: flex;
    align-items: center;
}

.captcha-img {
    height: 38px;
    border-radius: 0.375rem;
    cursor: pointer;
}

.captcha-refresh-btn {
    cursor: pointer;
    background-color: var(--bs-light, #f8f9fa);
    transition: background-color 0.2s ease, color 0.2s ease;
}

.captcha-refresh-btn:hover {
    background-color: #e9ecef;
    color: var(--bs-primary, #0d6efd);
}

@keyframes spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.spin-animation {
    animation: spin 0.6s ease-in-out;
}

/* Max Width Helpers */
.max-w-150 {
    max-width: 150px;
}

.h-38 {
    height: 38px;
}

/* Dark Mode Overrides */
[data-bs-theme="dark"] .register-card {
    background-color: var(--site-surface-soft, #1f252d);
    border: 1px solid var(--site-border-color, rgba(216, 188, 154, 0.14));
}

[data-bs-theme="dark"] .register-card .input-group-text {
    background-color: var(--site-surface-muted, #262d36);
    color: var(--site-text-secondary, #c6b6a4);
    border-color: var(--site-border-color, rgba(216, 188, 154, 0.14));
}

[data-bs-theme="dark"] .progress-strength {
    background-color: rgba(255, 255, 255, 0.1);
}

[data-bs-theme="dark"] #criteriaContainer,
[data-bs-theme="dark"] #matchContainer > div {
    background-color: var(--site-surface-muted, #262d36) !important;
    border-color: var(--site-border-color, rgba(216, 188, 154, 0.14)) !important;
}

[data-bs-theme="dark"] .captcha-refresh-btn {
    background-color: var(--site-surface-muted, #262d36);
    border-color: var(--site-border-color, rgba(216, 188, 154, 0.14));
    color: var(--site-text-secondary, #c6b6a4);
}
