/* ========================================================================== 
   Site SEO Audit v0.9.0 — Unified authentication UI
   Login / Register / Forgot password / Reset password
   Design system: black + white, restrained red accent.
   ========================================================================== */

body.page-sitecheckr-auth {
    --sa-black: #0f0f0f;
    --sa-ink: #171717;
    --sa-paper: #ffffff;
    --sa-soft: #f2f2f0;
    --sa-soft-2: #e8e8e5;
    --sa-line: #dcdcd8;
    --sa-muted: #6b6b67;
    --sa-muted-2: #92928d;
    --sa-red: #d62828;
    --sa-red-hover: #bd2020;
    --sa-red-soft: rgba(214, 40, 40, .09);
    --sa-radius: 28px;
    --sa-radius-sm: 16px;
    margin: 0;
    background: var(--sa-soft);
    color: var(--sa-ink);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

body.page-sitecheckr-auth::selection {
    background: var(--sa-red);
    color: #fff;
}

/* Header — same visual language as the homepage. */
body.page-sitecheckr-auth .site-header {
    position: relative;
    z-index: 90;
    border: 0;
    border-bottom: 1px solid rgba(255, 255, 255, .08);
    background: var(--sa-black);
    backdrop-filter: none;
}

body.page-sitecheckr-auth .site-header__inner {
    width: min(1360px, calc(100% - 64px));
    min-height: 78px;
    gap: 24px;
}

body.page-sitecheckr-auth .brand {
    gap: 11px;
    color: #fff;
}

body.page-sitecheckr-auth .brand__mark {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: var(--sa-red);
    color: #fff;
    font-size: 14px;
    font-weight: 900;
    box-shadow: none;
    transition: transform .25s ease, background .25s ease;
}

body.page-sitecheckr-auth .brand:hover .brand__mark {
    background: #fff;
    color: var(--sa-black);
    transform: rotate(-8deg) scale(1.04);
}

body.page-sitecheckr-auth .brand__name {
    color: #fff;
    font-size: 20px;
    font-weight: 760;
    letter-spacing: -.04em;
}

body.page-sitecheckr-auth .site-nav {
    gap: 4px;
    padding: 5px;
    overflow: visible;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 999px;
    background: rgba(255, 255, 255, .08);
}

body.page-sitecheckr-auth .site-nav a {
    padding: 9px 15px;
    border-radius: 999px;
    color: rgba(255, 255, 255, .78);
    font-size: 13px;
    font-weight: 650;
    letter-spacing: -.02em;
    transition: color .2s ease, background .2s ease, transform .2s ease;
}

body.page-sitecheckr-auth .site-nav a:hover {
    background: rgba(255, 255, 255, .1);
    color: #fff;
    transform: translateY(-1px);
}

body.page-sitecheckr-auth .site-header__actions .button--ghost,
body.page-sitecheckr-auth .site-header__text-link {
    border-color: transparent;
    background: transparent;
    color: rgba(255, 255, 255, .86);
}

body.page-sitecheckr-auth .site-header__actions .button--ghost:hover,
body.page-sitecheckr-auth .site-header__text-link:hover {
    background: rgba(255, 255, 255, .08);
    color: #fff;
}

body.page-sitecheckr-auth .site-header__actions .button--primary {
    border-color: var(--sa-red);
    background: var(--sa-red);
    color: #fff;
    box-shadow: none;
}

body.page-sitecheckr-auth .site-header__actions .button--primary:hover {
    border-color: var(--sa-red-hover);
    background: var(--sa-red-hover);
    box-shadow: none;
}

body.page-sitecheckr-auth .site-language-switcher summary {
    border-color: rgba(255, 255, 255, .16);
    background: rgba(255, 255, 255, .07);
    color: #fff;
}

body.page-sitecheckr-auth .nav-toggle {
    border-color: rgba(255, 255, 255, .2);
    background: rgba(255, 255, 255, .08);
}

body.page-sitecheckr-auth .nav-toggle span {
    background: #fff;
}

/* Page stage. */
body.page-sitecheckr-auth .sitecheckr-auth-page {
    min-height: calc(100svh - 78px);
    padding: clamp(30px, 4.2vw, 58px) 24px clamp(42px, 6vw, 76px);
    background:
        radial-gradient(circle at 90% 4%, rgba(214, 40, 40, .045), transparent 25%),
        linear-gradient(180deg, #f5f5f3 0%, #efefec 100%);
}

body.page-sitecheckr-auth .sitecheckr-auth-shell {
    display: grid;
    grid-template-columns: minmax(0, .94fr) minmax(430px, 1.06fr);
    width: min(1180px, 100%);
    min-height: 650px;
    margin: 0 auto;
    overflow: hidden;
    border: 1px solid rgba(15, 15, 15, .10);
    border-radius: var(--sa-radius);
    background: #fff;
    box-shadow: 0 24px 70px rgba(15, 15, 15, .09);
}

body.page-sitecheckr-auth .sitecheckr-auth-pane {
    display: flex;
    min-width: 0;
    flex-direction: column;
    justify-content: center;
    padding: clamp(38px, 5vw, 64px);
    background: #fff;
}

body.page-sitecheckr-auth .sitecheckr-auth-back {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    gap: 8px;
    margin: 0 0 28px;
    color: #686864;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: -.01em;
    text-decoration: none;
    transition: color .2s ease, transform .2s ease;
}

body.page-sitecheckr-auth .sitecheckr-auth-back:hover {
    color: var(--sa-red);
    transform: translateX(-2px);
}

body.page-sitecheckr-auth .sitecheckr-auth-form,
body.page-sitecheckr-auth .sitecheckr-auth-form > .auth-card {
    width: 100%;
}

body.page-sitecheckr-auth .sitecheckr-auth-form .auth-card,
body.page-sitecheckr-auth .sitecheckr-auth-form .card-header,
body.page-sitecheckr-auth .sitecheckr-auth-form .card-body {
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.page-sitecheckr-auth .sitecheckr-auth-form .card-header {
    padding: 0 0 23px !important;
}

body.page-sitecheckr-auth .sitecheckr-auth-form .card-body {
    padding: 0 !important;
}

body.page-sitecheckr-auth .sitecheckr-auth-form .card-header > div,
body.page-sitecheckr-auth .sitecheckr-auth-form .card-header > div > div {
    display: block !important;
    text-align: left !important;
}

body.page-sitecheckr-auth .sitecheckr-auth-form .card-header h3 {
    margin: 0 0 9px !important;
    color: var(--sa-black) !important;
    font-size: clamp(34px, 4vw, 46px) !important;
    font-weight: 780 !important;
    letter-spacing: -.05em;
    line-height: 1;
}

body.page-sitecheckr-auth .sitecheckr-auth-form .card-header p {
    max-width: 520px;
    margin: 0 !important;
    color: var(--sa-muted) !important;
    font-size: 14px;
    line-height: 1.62;
}

/* Forms. */
body.page-sitecheckr-auth .sitecheckr-auth-form form > .row,
body.page-sitecheckr-auth .sitecheckr-auth-form form .row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 16px;
    margin: 0;
}

body.page-sitecheckr-login .sitecheckr-auth-form form > .row:first-of-type,
body.page-sitecheckr-login .sitecheckr-auth-form form .row:first-of-type {
    grid-template-columns: 1fr;
}

body.page-sitecheckr-auth .sitecheckr-auth-form form [class*="col-"] {
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
}

body.page-sitecheckr-auth .sitecheckr-auth-form label,
body.page-sitecheckr-auth .sitecheckr-auth-form .form-label,
body.page-sitecheckr-auth .sitecheckr-auth-card__form label,
body.page-sitecheckr-auth .sitecheckr-auth-card__form .form-label {
    display: block;
    margin: 0 0 7px;
    color: #222;
    font-size: 12px;
    font-weight: 800;
}

body.page-sitecheckr-auth .sitecheckr-auth-form .form-control,
body.page-sitecheckr-auth .sitecheckr-auth-form input[type="text"],
body.page-sitecheckr-auth .sitecheckr-auth-form input[type="email"],
body.page-sitecheckr-auth .sitecheckr-auth-form input[type="password"],
body.page-sitecheckr-auth .sitecheckr-auth-card__form .form-control,
body.page-sitecheckr-auth .sitecheckr-auth-card__form input[type="text"],
body.page-sitecheckr-auth .sitecheckr-auth-card__form input[type="email"],
body.page-sitecheckr-auth .sitecheckr-auth-card__form input[type="password"] {
    width: 100%;
    height: 52px;
    padding: 0 15px !important;
    border: 1px solid #d8d8d4 !important;
    border-radius: 13px !important;
    outline: 0;
    appearance: none;
    -webkit-appearance: none;
    background: #fff !important;
    color: #151515 !important;
    font: inherit;
    font-size: 14px;
    box-shadow: 0 1px 2px rgba(15, 15, 15, .025) !important;
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

body.page-sitecheckr-auth .sitecheckr-auth-form .form-control:focus,
body.page-sitecheckr-auth .sitecheckr-auth-form input:focus,
body.page-sitecheckr-auth .sitecheckr-auth-card__form .form-control:focus,
body.page-sitecheckr-auth .sitecheckr-auth-card__form input:focus {
    border-color: rgba(214, 40, 40, .72) !important;
    box-shadow: 0 0 0 4px rgba(214, 40, 40, .09) !important;
}

body.page-sitecheckr-auth .sitecheckr-auth-form input::placeholder,
body.page-sitecheckr-auth .sitecheckr-auth-card__form input::placeholder {
    color: #999994;
    opacity: 1;
}

body.page-sitecheckr-auth .sitecheckr-auth-form .auth-input-icon {
    display: none !important;
}

body.page-sitecheckr-auth .sitecheckr-auth-form .ps-5 {
    padding-left: 15px !important;
}

body.page-sitecheckr-auth .sitecheckr-auth-form .input-group,
body.page-sitecheckr-auth .sitecheckr-auth-card__form .input-group {
    position: relative;
    display: block;
}

body.page-sitecheckr-auth .sitecheckr-auth-form .input-password-toggle,
body.page-sitecheckr-auth .sitecheckr-auth-card__form .input-password-toggle {
    position: absolute;
    z-index: 4;
    top: 50%;
    right: 12px;
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 9px;
    color: #777772;
    cursor: pointer;
    transform: translateY(-50%);
}

body.page-sitecheckr-auth .sitecheckr-auth-form .input-password-toggle:hover,
body.page-sitecheckr-auth .sitecheckr-auth-card__form .input-password-toggle:hover {
    background: #f0f0ed;
    color: #111;
}

body.page-sitecheckr-auth .sitecheckr-auth-form .row.g-0.mb-3 {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    align-items: center;
    gap: 12px;
    margin: 2px 0 18px !important;
}

body.page-sitecheckr-auth .sitecheckr-auth-form .row.g-0.mb-3 > * {
    width: auto !important;
}

body.page-sitecheckr-auth .sitecheckr-auth-form .text-end {
    text-align: right !important;
}

body.page-sitecheckr-auth .sitecheckr-auth-form a,
body.page-sitecheckr-auth .sitecheckr-auth-card__form a,
body.page-sitecheckr-auth .sitecheckr-auth-card__footer a {
    color: var(--sa-red);
    font-weight: 760;
    text-decoration: none !important;
}

body.page-sitecheckr-auth .sitecheckr-auth-form a:hover,
body.page-sitecheckr-auth .sitecheckr-auth-card__form a:hover,
body.page-sitecheckr-auth .sitecheckr-auth-card__footer a:hover {
    color: var(--sa-red-hover);
    text-decoration: underline !important;
}

body.page-sitecheckr-auth .sitecheckr-auth-form .form-check,
body.page-sitecheckr-auth .sitecheckr-auth-card__form .form-check {
    display: flex !important;
    min-height: 0 !important;
    align-items: flex-start;
    gap: 9px;
    padding: 0 !important;
    margin: 0 0 15px !important;
}

body.page-sitecheckr-auth .sitecheckr-auth-form .form-check-input,
body.page-sitecheckr-auth .sitecheckr-auth-form input[type="checkbox"],
body.page-sitecheckr-auth .sitecheckr-auth-card__form input[type="checkbox"] {
    flex: 0 0 auto;
    width: 18px !important;
    height: 18px !important;
    margin: 1px 0 0 !important;
    border: 1px solid #c8c8c3 !important;
    border-radius: 5px !important;
    accent-color: var(--sa-red);
}

body.page-sitecheckr-auth .sitecheckr-auth-form .form-check label,
body.page-sitecheckr-auth .sitecheckr-auth-form .form-check-label,
body.page-sitecheckr-auth .sitecheckr-auth-card__form .form-check label,
body.page-sitecheckr-auth .sitecheckr-auth-card__form .form-check-label {
    margin: 0 !important;
    color: #666662;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.5;
}

body.page-sitecheckr-auth .sitecheckr-auth-form .d-grid,
body.page-sitecheckr-auth .sitecheckr-auth-card__form .d-grid {
    display: block !important;
}

body.page-sitecheckr-auth .sitecheckr-auth-form .btn-auth-submit,
body.page-sitecheckr-auth .sitecheckr-auth-form button[type="submit"],
body.page-sitecheckr-auth .sitecheckr-auth-card__form .btn-auth-submit,
body.page-sitecheckr-auth .sitecheckr-auth-card__form button[type="submit"] {
    display: inline-flex;
    width: 100%;
    min-height: 52px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 20px;
    border: 1px solid var(--sa-red) !important;
    border-radius: 13px !important;
    appearance: none;
    -webkit-appearance: none;
    background: var(--sa-red) !important;
    color: #fff !important;
    font-size: 14px;
    font-weight: 850;
    box-shadow: 0 10px 24px rgba(214, 40, 40, .17) !important;
    cursor: pointer;
    transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}

body.page-sitecheckr-auth .sitecheckr-auth-form .btn-auth-submit:hover,
body.page-sitecheckr-auth .sitecheckr-auth-form button[type="submit"]:hover,
body.page-sitecheckr-auth .sitecheckr-auth-card__form button[type="submit"]:hover {
    border-color: var(--sa-red-hover) !important;
    background: var(--sa-red-hover) !important;
    box-shadow: 0 14px 30px rgba(214, 40, 40, .22) !important;
    transform: translateY(-1px);
}

body.page-sitecheckr-auth .sitecheckr-auth-form .alert,
body.page-sitecheckr-auth .sitecheckr-auth-card__form .alert {
    margin-bottom: 16px;
    padding: 12px 14px;
    border: 1px solid rgba(214, 40, 40, .18);
    border-radius: 12px;
    background: #fff4f4;
    color: #9f2525;
    font-size: 12px;
    line-height: 1.5;
}

body.page-sitecheckr-auth .sitecheckr-auth-form .invalid-feedback,
body.page-sitecheckr-auth .sitecheckr-auth-form .help-block,
body.page-sitecheckr-auth .sitecheckr-auth-form .text-danger,
body.page-sitecheckr-auth .sitecheckr-auth-card__form .invalid-feedback,
body.page-sitecheckr-auth .sitecheckr-auth-card__form .help-block,
body.page-sitecheckr-auth .sitecheckr-auth-card__form .text-danger {
    display: block;
    margin-top: 6px;
    color: #b72b2b;
    font-size: 11px;
}

/* Social login. */
body.page-sitecheckr-auth .sitecheckr-auth-form .login-options {
    margin-top: 22px;
}

body.page-sitecheckr-auth .sitecheckr-auth-form .login-options-title {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 12px;
    margin: 21px 0 14px;
    color: #888883;
    font-size: 11px;
    text-align: center;
}

body.page-sitecheckr-auth .sitecheckr-auth-form .login-options-title::before,
body.page-sitecheckr-auth .sitecheckr-auth-form .login-options-title::after {
    height: 1px;
    background: #e4e4e0;
    content: "";
}

body.page-sitecheckr-auth .sitecheckr-auth-form .social-icons,
body.page-sitecheckr-auth .sitecheckr-auth-form .social-login-basic {
    display: grid !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    gap: 9px;
}

body.page-sitecheckr-auth .sitecheckr-auth-form .social-icons a,
body.page-sitecheckr-auth .sitecheckr-auth-form .social-login-basic a,
body.page-sitecheckr-auth .sitecheckr-auth-form a.social-login {
    display: flex !important;
    width: 100% !important;
    min-height: 50px;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 0 16px;
    border: 1px solid #d8d8d4 !important;
    border-radius: 13px !important;
    background: #fff !important;
    color: #171717 !important;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none !important;
    box-shadow: none !important;
    transition: border-color .18s ease, background .18s ease, transform .18s ease;
}

body.page-sitecheckr-auth .sitecheckr-auth-form .social-icons a:hover,
body.page-sitecheckr-auth .sitecheckr-auth-form .social-login-basic a:hover {
    border-color: #bdbdb7 !important;
    background: #f7f7f5 !important;
    transform: translateY(-1px);
}

body.page-sitecheckr-auth .sitecheckr-auth-form .auth-card form > p,
body.page-sitecheckr-auth .sitecheckr-auth-form .auth-card form .text-center {
    color: #777772;
    font-size: 12px;
    text-align: center;
}

body.page-sitecheckr-auth .sitecheckr-auth-security {
    display: flex;
    flex-wrap: wrap;
    gap: 7px 14px;
    margin-top: 21px;
    color: #777772;
    font-size: 10px;
    line-height: 1.5;
}

body.page-sitecheckr-auth .sitecheckr-auth-security span::first-letter {
    color: var(--sa-red);
}

/* Dark proof panel. */
body.page-sitecheckr-auth .sitecheckr-auth-proof {
    position: relative;
    display: flex;
    min-width: 0;
    align-items: center;
    overflow: hidden;
    padding: clamp(42px, 5.5vw, 70px);
    background: var(--sa-black) !important;
    isolation: isolate;
}

body.page-sitecheckr-auth .sitecheckr-auth-proof::before {
    position: absolute;
    z-index: -1;
    top: -116px;
    right: -94px;
    width: 360px;
    height: 360px;
    border: 1px solid rgba(214, 40, 40, .28);
    border-radius: 50%;
    box-shadow:
        0 0 0 48px rgba(214, 40, 40, .045),
        0 0 0 96px rgba(214, 40, 40, .025);
    content: "";
}

body.page-sitecheckr-auth .sitecheckr-auth-proof::after {
    position: absolute;
    z-index: -1;
    right: -12%;
    bottom: -26%;
    width: 62%;
    height: 50%;
    border-radius: 50%;
    background: rgba(214, 40, 40, .10);
    filter: blur(70px);
    content: "";
}

body.page-sitecheckr-auth .sitecheckr-auth-proof__glow {
    position: absolute;
    z-index: -1;
    top: 30%;
    right: 8%;
    width: 180px;
    height: 180px;
    border-radius: 50%;
    background: rgba(214, 40, 40, .08);
    filter: blur(55px);
}

body.page-sitecheckr-auth .sitecheckr-auth-proof__content {
    position: relative;
    z-index: 2;
    width: min(100%, 560px);
}

body.page-sitecheckr-auth .sitecheckr-auth-proof__eyebrow,
body.page-sitecheckr-auth .sitecheckr-auth-proof__label {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #ef5757;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .14em;
    text-transform: uppercase;
}

body.page-sitecheckr-auth .sitecheckr-auth-proof__eyebrow::before,
body.page-sitecheckr-auth .sitecheckr-auth-proof__label::before {
    width: 24px;
    height: 1px;
    background: currentColor;
    content: "";
}

body.page-sitecheckr-auth .sitecheckr-auth-proof h2 {
    max-width: 560px;
    margin: 17px 0 14px;
    color: #fff !important;
    font-size: clamp(38px, 4.5vw, 58px);
    font-weight: 770;
    letter-spacing: -.055em;
    line-height: .98;
}

body.page-sitecheckr-auth .sitecheckr-auth-proof > div > p,
body.page-sitecheckr-auth .sitecheckr-auth-proof__content > p {
    max-width: 530px;
    margin: 0 0 26px;
    color: rgba(255, 255, 255, .64) !important;
    font-size: 14px;
    line-height: 1.65;
}

body.page-sitecheckr-auth .sitecheckr-auth-proof__steps {
    display: grid;
    gap: 10px;
}

body.page-sitecheckr-auth .sitecheckr-auth-proof__steps > div {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 2px 12px;
    align-items: center;
    padding: 14px 16px;
    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 14px;
    background: rgba(255, 255, 255, .045);
    transition: border-color .22s ease, background .22s ease, transform .22s ease;
}

body.page-sitecheckr-auth .sitecheckr-auth-proof__steps > div:hover {
    border-color: rgba(214, 40, 40, .42);
    background: rgba(255, 255, 255, .065);
    transform: translateX(3px);
}

body.page-sitecheckr-auth .sitecheckr-auth-proof__steps span {
    grid-row: 1 / 3;
    color: #ef5757;
    font-size: 11px;
    font-weight: 900;
}

body.page-sitecheckr-auth .sitecheckr-auth-proof__steps strong {
    color: #fff;
    font-size: 14px;
}

body.page-sitecheckr-auth .sitecheckr-auth-proof__steps small {
    color: rgba(255, 255, 255, .48);
    font-size: 11px;
}

body.page-sitecheckr-auth .sitecheckr-auth-audit-card,
body.page-sitecheckr-auth .sitecheckr-auth-plan-card {
    position: relative;
    display: grid;
    align-items: center;
    gap: 18px;
    padding: 20px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 17px;
    background: rgba(255, 255, 255, .055);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04);
    backdrop-filter: blur(10px);
}

body.page-sitecheckr-auth .sitecheckr-auth-audit-card {
    grid-template-columns: 82px minmax(0, 1fr);
}

body.page-sitecheckr-auth .sitecheckr-auth-audit-card__score {
    display: flex;
    width: 78px;
    height: 78px;
    align-items: baseline;
    justify-content: center;
    padding-top: 21px;
    border: 5px solid rgba(214, 40, 40, .85);
    border-radius: 50%;
    background: rgba(255, 255, 255, .03);
    color: #fff;
}

body.page-sitecheckr-auth .sitecheckr-auth-audit-card__score strong {
    font-size: 25px;
    line-height: 1;
}

body.page-sitecheckr-auth .sitecheckr-auth-audit-card__score span,
body.page-sitecheckr-auth .sitecheckr-auth-audit-card small,
body.page-sitecheckr-auth .sitecheckr-auth-audit-card span,
body.page-sitecheckr-auth .sitecheckr-auth-plan-card small,
body.page-sitecheckr-auth .sitecheckr-auth-plan-card li {
    color: rgba(255, 255, 255, .53);
}

body.page-sitecheckr-auth .sitecheckr-auth-proof__stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 9px;
    margin-top: 11px;
}

body.page-sitecheckr-auth .sitecheckr-auth-proof__stats > div,
body.page-sitecheckr-auth .sitecheckr-auth-unlocks span {
    padding: 12px 13px;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 12px;
    background: rgba(255, 255, 255, .035);
}

body.page-sitecheckr-auth .sitecheckr-auth-proof__stats strong {
    color: #fff;
    font-size: 19px;
}

body.page-sitecheckr-auth .sitecheckr-auth-proof__stats span {
    color: rgba(255, 255, 255, .48);
    font-size: 9px;
}

body.page-sitecheckr-auth .sitecheckr-auth-unlocks {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin-top: 11px;
}

body.page-sitecheckr-auth .sitecheckr-auth-unlocks span {
    color: rgba(255, 255, 255, .68);
    font-size: 11px;
}

body.page-sitecheckr-auth .sitecheckr-auth-plan-card {
    display: block;
}

body.page-sitecheckr-auth .sitecheckr-auth-plan-card > span {
    color: #ef5757;
}

body.page-sitecheckr-auth .sitecheckr-auth-plan-card > strong {
    display: flex;
    align-items: baseline;
    gap: 7px;
    margin: 8px 0 13px;
    color: #fff;
    font-size: 40px;
}

body.page-sitecheckr-auth .sitecheckr-auth-plan-card ul {
    display: grid;
    margin: 0;
    padding: 0;
    list-style: none;
    gap: 7px;
}

body.page-sitecheckr-auth .sitecheckr-auth-plan-card li::before {
    margin-right: 8px;
    color: #ef5757;
    content: "✓";
    font-weight: 900;
}

/* Forgot / reset use the same two-panel system. */
body.page-sitecheckr-password .sitecheckr-auth-shell {
    display: block;
    min-height: 0;
    overflow: visible;
    border: 0;
    background: transparent;
    box-shadow: none;
}

body.page-sitecheckr-password .sitecheckr-auth-grid {
    display: grid;
    grid-template-columns: minmax(0, .94fr) minmax(430px, 1.06fr);
    min-height: 610px;
    overflow: hidden;
    border: 1px solid rgba(15, 15, 15, .10);
    border-radius: var(--sa-radius);
    background: #fff;
    box-shadow: 0 24px 70px rgba(15, 15, 15, .09);
}

body.page-sitecheckr-password .sitecheckr-auth-card {
    display: flex;
    min-width: 0;
    flex-direction: column;
    justify-content: center;
    padding: clamp(38px, 5vw, 64px);
    background: #fff;
}

body.page-sitecheckr-password .sitecheckr-auth-card__top {
    display: block;
}

body.page-sitecheckr-password .sitecheckr-auth-icon {
    display: grid;
    width: 38px;
    height: 38px;
    margin: 0 0 22px;
    place-items: center;
    border-radius: 50%;
    background: var(--sa-red-soft);
    color: var(--sa-red);
    font-size: 15px;
    font-weight: 900;
}

body.page-sitecheckr-password .sitecheckr-auth-card__top small {
    display: block;
    margin-bottom: 8px;
    color: var(--sa-red);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .13em;
    text-transform: uppercase;
}

body.page-sitecheckr-password .sitecheckr-auth-card__top h1 {
    margin: 0;
    color: var(--sa-black);
    font-size: clamp(34px, 4vw, 46px);
    font-weight: 780;
    letter-spacing: -.05em;
    line-height: 1;
}

body.page-sitecheckr-password .sitecheckr-auth-card__lead {
    max-width: 500px;
    margin: 12px 0 24px;
    color: var(--sa-muted);
    font-size: 14px;
    line-height: 1.62;
}

body.page-sitecheckr-password .sitecheckr-auth-card__footer {
    margin-top: 20px;
    padding-top: 18px;
    border-top: 1px solid #e3e3df;
    color: #777772;
    font-size: 12px;
}

body.page-sitecheckr-password .sitecheckr-auth-proof--generic {
    background: var(--sa-black) !important;
}

/* Footer — same black base as homepage. */
body.page-sitecheckr-auth .site-footer {
    margin-top: 0;
    border-top: 1px solid rgba(255, 255, 255, .08);
    background: var(--sa-black);
}

body.page-sitecheckr-auth .site-footer .brand__mark {
    background: var(--sa-red);
    color: #fff;
}

body.page-sitecheckr-auth .site-footer p,
body.page-sitecheckr-auth .site-footer__links a,
body.page-sitecheckr-auth .site-footer__bottom {
    color: rgba(255, 255, 255, .5);
}

body.page-sitecheckr-auth .site-footer__links strong,
body.page-sitecheckr-auth .site-footer .brand__name {
    color: #fff;
}

body.page-sitecheckr-auth .site-footer__links a:hover {
    color: #fff;
}

/* Entrance motion, subtle and optional. */
@media (prefers-reduced-motion: no-preference) {
    body.page-sitecheckr-auth .sitecheckr-auth-pane,
    body.page-sitecheckr-auth .sitecheckr-auth-card {
        animation: sa-auth-left-in .55s cubic-bezier(.2, .8, .2, 1) both;
    }

    body.page-sitecheckr-auth .sitecheckr-auth-proof {
        animation: sa-auth-right-in .65s .06s cubic-bezier(.2, .8, .2, 1) both;
    }

    body.page-sitecheckr-auth .sitecheckr-auth-proof__steps > div {
        animation: sa-auth-step-in .48s both;
    }

    body.page-sitecheckr-auth .sitecheckr-auth-proof__steps > div:nth-child(1) { animation-delay: .22s; }
    body.page-sitecheckr-auth .sitecheckr-auth-proof__steps > div:nth-child(2) { animation-delay: .29s; }
    body.page-sitecheckr-auth .sitecheckr-auth-proof__steps > div:nth-child(3) { animation-delay: .36s; }
}

@keyframes sa-auth-left-in {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes sa-auth-right-in {
    from { opacity: 0; transform: translateX(18px); }
    to { opacity: 1; transform: translateX(0); }
}

@keyframes sa-auth-step-in {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Tablet. */
@media (max-width: 980px) {
    body.page-sitecheckr-auth .site-header__inner {
        width: min(100% - 36px, 1360px);
        min-height: 72px;
    }

    body.page-sitecheckr-auth .sitecheckr-auth-page {
        min-height: calc(100svh - 72px);
        padding: 24px 18px 42px;
    }

    body.page-sitecheckr-auth .sitecheckr-auth-shell,
    body.page-sitecheckr-password .sitecheckr-auth-grid {
        grid-template-columns: 1fr;
        min-height: 0;
    }

    body.page-sitecheckr-auth .sitecheckr-auth-proof {
        order: 0 !important;
        min-height: 0;
        padding: 38px;
    }

    body.page-sitecheckr-auth .sitecheckr-auth-pane,
    body.page-sitecheckr-password .sitecheckr-auth-card {
        padding: 42px;
    }

    body.page-sitecheckr-auth .sitecheckr-auth-proof h2 {
        max-width: 680px;
        font-size: 40px;
    }
}

/* Mobile. Composition changes, design language stays the same. */
@media (max-width: 640px) {
    body.page-sitecheckr-auth .site-header__inner {
        width: calc(100% - 28px);
        min-height: 66px;
        gap: 12px;
    }

    body.page-sitecheckr-auth .brand__mark {
        width: 32px;
        height: 32px;
        font-size: 12px;
    }

    body.page-sitecheckr-auth .brand__name {
        font-size: 17px;
    }

    body.page-sitecheckr-auth .site-header__actions .button--ghost,
    body.page-sitecheckr-auth .site-header__actions .button--primary,
    body.page-sitecheckr-auth .site-language-switcher {
        display: none;
    }

    body.page-sitecheckr-auth .sitecheckr-auth-page {
        min-height: calc(100svh - 66px);
        padding: 14px 10px 28px;
    }

    body.page-sitecheckr-auth .sitecheckr-auth-shell,
    body.page-sitecheckr-password .sitecheckr-auth-grid {
        border-radius: 20px;
    }

    body.page-sitecheckr-auth .sitecheckr-auth-pane,
    body.page-sitecheckr-password .sitecheckr-auth-card {
        padding: 30px 22px;
    }

    body.page-sitecheckr-auth .sitecheckr-auth-back {
        margin-bottom: 24px;
    }

    body.page-sitecheckr-auth .sitecheckr-auth-form .card-header h3,
    body.page-sitecheckr-password .sitecheckr-auth-card__top h1 {
        font-size: 34px !important;
    }

    body.page-sitecheckr-auth .sitecheckr-auth-form form > .row,
    body.page-sitecheckr-auth .sitecheckr-auth-form form .row,
    body.page-sitecheckr-auth .sitecheckr-auth-unlocks,
    body.page-sitecheckr-auth .sitecheckr-auth-proof__stats {
        grid-template-columns: 1fr;
    }

    body.page-sitecheckr-auth .sitecheckr-auth-form .row.g-0.mb-3 {
        grid-template-columns: 1fr auto !important;
        gap: 10px;
    }

    body.page-sitecheckr-auth .sitecheckr-auth-form .text-end {
        text-align: right !important;
    }

    body.page-sitecheckr-auth .sitecheckr-auth-proof {
        padding: 30px 22px 32px;
    }

    body.page-sitecheckr-auth .sitecheckr-auth-proof::before {
        top: -85px;
        right: -82px;
        width: 250px;
        height: 250px;
        box-shadow: 0 0 0 35px rgba(214, 40, 40, .035), 0 0 0 70px rgba(214, 40, 40, .018);
    }

    body.page-sitecheckr-auth .sitecheckr-auth-proof h2 {
        max-width: 330px;
        margin-top: 13px;
        font-size: 32px;
        line-height: 1;
    }

    body.page-sitecheckr-auth .sitecheckr-auth-proof > div > p,
    body.page-sitecheckr-auth .sitecheckr-auth-proof__content > p {
        margin-bottom: 20px;
        font-size: 13px;
        line-height: 1.58;
    }

    body.page-sitecheckr-auth .sitecheckr-auth-proof__steps > div {
        padding: 12px 13px;
    }

    body.page-sitecheckr-auth .sitecheckr-auth-audit-card {
        grid-template-columns: 68px minmax(0, 1fr);
        gap: 13px;
        padding: 15px;
    }

    body.page-sitecheckr-auth .sitecheckr-auth-audit-card__score {
        width: 64px;
        height: 64px;
        padding-top: 16px;
        border-width: 4px;
    }

    body.page-sitecheckr-auth .sitecheckr-auth-audit-card__score strong {
        font-size: 21px;
    }

    body.page-sitecheckr-auth .sitecheckr-auth-security {
        margin-top: 18px;
    }

    body.page-sitecheckr-auth .site-footer {
        display: none;
    }
}
