/**
 * Filament guest auth (login / 2FA / password reset).
 * Flat brand chrome — no cream canvas, no glow gradients, no decorative copy.
 * Tokens align with BoostxFilamentTheme / RA shell (#32104d, #f7f8fa).
 */

html.fi:has(.fi-simple-layout),
.fi-simple-layout,
.bx-login-page.fi-body,
.fi-body:has(.fi-simple-layout) {
    min-height: 100dvh;
    background-color: #f7f8fa !important;
    background-image: none !important;
}

.fi-simple-layout .fi-simple-main-ctn,
.bx-login-page .fi-simple-main-ctn {
    min-height: 100dvh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem 1rem;
    background: transparent !important;
    background-image: none !important;
}

.fi-simple-layout .fi-simple-main,
.bx-login-page .fi-simple-main {
    position: relative;
    width: 100%;
    max-width: 28rem;
    background: #ffffff !important;
    border: 1px solid #e8e7ed !important;
    border-radius: 0.75rem !important;
    box-shadow: 0 8px 24px rgba(25, 23, 36, 0.04);
    padding: 2rem 1.75rem 1.75rem !important;
}

.fi-simple-layout .fi-simple-page,
.bx-login-page .fi-simple-page {
    width: 100%;
}

.fi-simple-layout .fi-simple-header,
.bx-login-page .fi-simple-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 0.25rem;
    margin-bottom: 1.5rem;
}

.fi-simple-layout .fi-logo,
.fi-simple-layout .fi-logo span,
.bx-login-page .fi-logo,
.bx-login-page .fi-logo span {
    color: #191724 !important;
    font-weight: 700 !important;
    letter-spacing: -0.02em;
}

.fi-simple-layout .fi-simple-header-heading,
.bx-login-page .fi-simple-header-heading {
    color: #191724 !important;
    font-weight: 600 !important;
    letter-spacing: -0.02em;
    font-size: 1.5rem !important;
    line-height: 1.25;
}

.fi-simple-layout .fi-simple-header-subheading,
.bx-login-page .fi-simple-header-subheading {
    color: #777382 !important;
    font-size: 0.875rem;
    font-weight: 400;
}

.fi-simple-layout .fi-fo-field-wrp-label,
.fi-simple-layout .fi-fo-field-wrp-label span,
.bx-login-page .fi-fo-field-wrp-label,
.bx-login-page .fi-fo-field-wrp-label span {
    color: #191724 !important;
    font-size: 0.8125rem;
    font-weight: 500;
}

.fi-simple-layout .fi-input-wrp,
.bx-login-page .fi-input-wrp {
    background: #f7f8fa !important;
    border: 1px solid #e8e7ed !important;
    border-radius: 0.5rem !important;
    box-shadow: none !important;
    min-height: 2.625rem;
}

.fi-simple-layout .fi-input-wrp:focus-within,
.bx-login-page .fi-input-wrp:focus-within {
    border-color: color-mix(in srgb, #32104d 40%, #e8e7ed) !important;
    box-shadow: 0 0 0 3px color-mix(in srgb, #32104d 14%, transparent) !important;
}

.fi-simple-layout .fi-input,
.fi-simple-layout .fi-input-wrp input,
.bx-login-page .fi-input,
.bx-login-page .fi-input-wrp input {
    background: transparent !important;
    color: #191724 !important;
}

.fi-simple-layout input:-webkit-autofill,
.fi-simple-layout input:-webkit-autofill:hover,
.fi-simple-layout input:-webkit-autofill:focus,
.bx-login-page input:-webkit-autofill,
.bx-login-page input:-webkit-autofill:hover,
.bx-login-page input:-webkit-autofill:focus {
    -webkit-box-shadow: 0 0 0 1000px #f7f8fa inset !important;
    box-shadow: 0 0 0 1000px #f7f8fa inset !important;
    -webkit-text-fill-color: #191724 !important;
    caret-color: #191724;
    border-radius: 0.5rem;
}

.fi-simple-layout .fi-input-wrp-suffix,
.bx-login-page .fi-input-wrp-suffix {
    background: transparent !important;
    color: #52475e !important;
    border-color: transparent !important;
}

.fi-simple-layout .fi-checkbox-input:checked,
.fi-simple-layout input[type='checkbox']:checked,
.bx-login-page .fi-checkbox-input:checked,
.bx-login-page input[type='checkbox']:checked {
    background-color: #32104d !important;
    border-color: #32104d !important;
}

.fi-simple-layout .fi-fo-checkbox,
.fi-simple-layout .fi-checkbox-label,
.bx-login-page .fi-fo-checkbox,
.bx-login-page .fi-checkbox-label {
    color: #191724 !important;
}

.fi-simple-layout .fi-sc-actions .fi-btn-color-primary,
.fi-simple-layout .fi-btn-color-primary,
.fi-simple-layout .fi-sc-actions .fi-btn.fi-color-primary,
.bx-login-page .fi-sc-actions .fi-btn-color-primary,
.bx-login-page .fi-btn-color-primary,
.bx-login-page .fi-sc-actions .fi-btn.fi-color-primary {
    --bg: #32104d !important;
    --hover-bg: #2a0d40 !important;
    --text: #ffffff !important;
    --hover-text: #ffffff !important;
    width: 100%;
    min-height: 2.625rem;
    background-color: #32104d !important;
    border-color: #32104d !important;
    color: #ffffff !important;
    border-radius: 0.5rem !important;
    font-weight: 600 !important;
}

.fi-simple-layout .fi-sc-actions .fi-btn-color-primary:hover,
.fi-simple-layout .fi-sc-actions .fi-btn.fi-color-primary:hover,
.bx-login-page .fi-sc-actions .fi-btn-color-primary:hover,
.bx-login-page .fi-sc-actions .fi-btn.fi-color-primary:hover {
    background-color: #2a0d40 !important;
    border-color: #2a0d40 !important;
    color: #ffffff !important;
}

.fi-simple-layout .fi-sc-actions .fi-btn-color-primary,
.fi-simple-layout .fi-sc-actions .fi-btn-color-primary span,
.fi-simple-layout .fi-sc-actions .fi-btn-color-primary .fi-btn-label,
.fi-simple-layout .fi-sc-actions .fi-btn.fi-color-primary,
.fi-simple-layout .fi-sc-actions .fi-btn.fi-color-primary span,
.fi-simple-layout .fi-sc-actions .fi-btn.fi-color-primary .fi-btn-label,
.bx-login-page .fi-btn-color-primary,
.bx-login-page .fi-btn-color-primary span,
.bx-login-page .fi-btn-color-primary .fi-btn-label,
.bx-login-page .fi-btn.fi-color-primary,
.bx-login-page .fi-btn.fi-color-primary span,
.bx-login-page .fi-btn.fi-color-primary .fi-btn-label {
    color: #ffffff !important;
}

.fi-simple-layout .fi-link,
.bx-login-page .fi-link {
    color: #32104d !important;
    font-weight: 600;
}

.fi-simple-layout .fi-link:hover,
.bx-login-page .fi-link:hover {
    color: #2a0d40 !important;
}
