@import '_content/Verapet.ClientShared/Verapet.ClientShared.7b4nrzxmgu.bundle.scp.css';

/* /Components/Account/Pages/Account.razor.rz.scp.css */
.account[b-upbhoz7s85] {
    display: flex;
    flex-direction: column;
    gap: var(--space-lg);
}

.account__header[b-upbhoz7s85] {
    display: flex;
    flex-direction: column;
    gap: var(--space-2xs);
}

.account__section[b-upbhoz7s85] {
    display: flex;
    flex-direction: column;
    gap: var(--space-md);
    padding-top: var(--space-lg);
    border-top: 1px solid var(--vp-line);
}

.account__section h2[b-upbhoz7s85] {
    margin: 0;
}

.account__profile[b-upbhoz7s85] {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--space-2xs) var(--space-md);
    margin: 0;
}

.account__profile dt[b-upbhoz7s85] {
    font-family: var(--font-mono);
    text-transform: uppercase;
    font-size: 11px;
    letter-spacing: var(--tracking-wide);
    color: var(--vp-muted);
}

.account__profile dd[b-upbhoz7s85] {
    margin: 0 0 var(--space-sm);
    color: var(--vp-ink);
    min-width: 0;
}

.account__value[b-upbhoz7s85] {
    overflow-wrap: anywhere;
}

.account__pills[b-upbhoz7s85] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-xs);
}

@media (min-width: 560px) {
    .account__profile[b-upbhoz7s85] {
        grid-template-columns: minmax(120px, 180px) 1fr;
        align-items: center;
    }

    .account__profile dt[b-upbhoz7s85] {
        margin: 0;
    }

    .account__profile dd[b-upbhoz7s85] {
        margin: 0;
        padding-block: var(--space-xs);
    }
}

.account__admin[b-upbhoz7s85] {
    display: flex;
}

.account__passkeys[b-upbhoz7s85] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
}

.account__passkey[b-upbhoz7s85] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: var(--space-sm);
    padding-block: var(--space-sm);
    border-bottom: 1px solid var(--vp-line);
}

.account__passkey:first-child[b-upbhoz7s85] {
    padding-top: 0;
}

.account__passkey-text[b-upbhoz7s85] {
    min-width: 0;
    overflow-wrap: anywhere;
}

.account__signout[b-upbhoz7s85] {
    display: flex;
    justify-content: center;
    padding-top: var(--space-md);
    border-top: 1px solid var(--vp-line);
}
/* /Components/Account/Pages/Login.razor.rz.scp.css */
/* The resend button lives in a warning alert on a phone: its label wraps instead of overflowing. */
.login-resend[b-bat895vnk4]  .vp-btn {
    height: auto;
    min-height: 0;
    padding-block: var(--space-xs);
    white-space: normal;
    text-align: center;
}

/* The only item in its row: pushed to the right edge. */
.login-forgot[b-bat895vnk4] {
    margin-left: auto;
}

/* The pre-launch line sits quietly under the heading, not in an alert. */
.login-prelaunch[b-bat895vnk4] {
    margin: 0;
}
/* /Components/Account/Pages/Register.razor.rz.scp.css */
.vp-role-group[b-xp43euaqjo] {
    border: 0;
    margin: 0;
    padding: 0;
}

.vp-role-list[b-xp43euaqjo] {
    --gap: 8px;
}

.vp-role-card[b-xp43euaqjo] {
    --role: var(--vp-ink);
    position: relative;
    display: grid;
    /* icon | text. The check mark sits in the top-right corner (below) instead of taking a column,
       so the description gets the full width on a 360-390px phone. */
    grid-template-columns: auto minmax(0, 1fr);
    align-items: start;
    gap: var(--space-sm);
    padding: var(--space-sm) var(--space-md);
    background: var(--vp-field);
    border: 1px solid var(--vp-field-line);
    border-radius: var(--radius-md);
    cursor: pointer;
}

.vp-role-card--buyer[b-xp43euaqjo] {
    --role: var(--vp-ink);
}

.vp-role-card--breeder[b-xp43euaqjo] {
    --role: var(--vp-gold);
}

.vp-role-card--shelter[b-xp43euaqjo] {
    --role: var(--vp-copper);
}

.vp-role-card--vet[b-xp43euaqjo] {
    --role: var(--vp-cyan);
}

.vp-role-card:hover[b-xp43euaqjo] {
    border-color: var(--role);
}

.vp-role-card:has(:checked)[b-xp43euaqjo] {
    border-color: var(--role);
    background: color-mix(in srgb, var(--role) 8%, var(--vp-field));
    box-shadow: 0 0 0 1px var(--role);
}

.vp-role-card:has(:focus-visible)[b-xp43euaqjo] {
    outline: 2px solid var(--role);
    outline-offset: 2px;
}

/* The native radio stays in the DOM and keyboard-operable; the card is its visible control. */
.vp-role-card[b-xp43euaqjo]  input[type="radio"] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    opacity: 0;
    cursor: pointer;
}

.vp-role-card__icon[b-xp43euaqjo] {
    display: inline-flex;
    flex: none;
    margin-top: 2px;
    color: var(--role);
}

.vp-role-card__text[b-xp43euaqjo] {
    display: flex;
    flex-direction: column;
    gap: var(--space-2xs);
    min-width: 0;
}

.vp-role-card__title[b-xp43euaqjo] {
    /* Clear of the corner check mark. */
    padding-right: var(--space-lg);
    font-weight: 600;
    color: var(--vp-ink);
}

.vp-role-card__desc[b-xp43euaqjo] {
    font-size: 14px;
    color: var(--vp-muted);
    overflow-wrap: anywhere;
}

.vp-role-card__check[b-xp43euaqjo] {
    position: absolute;
    top: var(--space-sm);
    right: var(--space-sm);
    display: inline-flex;
    color: var(--role);
    visibility: hidden;
}

.vp-role-card:has(:checked) .vp-role-card__check[b-xp43euaqjo] {
    visibility: visible;
}
/* /Components/Account/Pages/TwoFactor.razor.rz.scp.css */
.two-factor[b-53vn94g99b] {
    gap: var(--space-lg);
}

.two-factor__header[b-53vn94g99b] {
    display: flex;
    flex-direction: column;
    gap: var(--space-2xs);
}

.two-factor__header h1[b-53vn94g99b],
.two-factor__header p[b-53vn94g99b] {
    margin: 0;
}

/* Cyan is the platform-trust tone; security onboarding wears it rather than the default copper. */
.two-factor__header .vp-eyebrow[b-53vn94g99b] {
    color: var(--vp-cyan);
}

.two-factor__steps[b-53vn94g99b] {
    list-style: none;
    margin: 0;
    padding: 0;
    counter-reset: two-factor-step;
    display: flex;
    flex-direction: column;
    gap: var(--space-lg);
}

.two-factor__step[b-53vn94g99b] {
    counter-increment: two-factor-step;
    position: relative;
    display: flex;
    flex-direction: column;
    gap: var(--space-xs);
    padding-left: 48px;
}

.two-factor__step[b-53vn94g99b]::before {
    content: counter(two-factor-step);
    position: absolute;
    left: 0;
    top: 0;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    border: 1px solid var(--vp-cyan);
    color: var(--vp-cyan);
    font-weight: 600;
    font-size: 14px;
    font-family: var(--font-mono);
}

.two-factor__step:not(:last-child)[b-53vn94g99b]::after {
    content: "";
    position: absolute;
    left: 15.5px;
    top: 40px;
    bottom: calc(-1 * var(--space-lg) + 8px);
    width: 1px;
    background: var(--vp-line);
}

.two-factor__step-title[b-53vn94g99b] {
    margin: 0;
    font-size: var(--step-0);
    /* One line sits centred on the 32px step number; a wrapped title keeps normal leading. */
    line-height: 1.3;
    padding-top: 5px;
}

.two-factor__step p[b-53vn94g99b] {
    margin: 0;
}

.two-factor__qr[b-53vn94g99b] {
    align-self: flex-start;
    padding: var(--space-sm);
    border: 1px solid var(--vp-line);
    border-radius: var(--radius-md);
    line-height: 0;
}

/* The SVG carries its own white ground and quiet zone; scanners need that contrast in every theme. */
.two-factor__qr[b-53vn94g99b]  svg {
    width: 176px;
    max-width: 100%;
    height: auto;
    border-radius: calc(var(--radius-md) - 4px);
}

.two-factor__manual summary[b-53vn94g99b] {
    color: var(--vp-copper);
    cursor: pointer;
    font-size: 14px;
}

.two-factor__manual summary:hover[b-53vn94g99b] {
    color: var(--vp-ink);
}

.two-factor__manual .two-factor__key[b-53vn94g99b] {
    margin: var(--space-xs) 0 0;
    padding: var(--space-xs) var(--space-sm);
    background: var(--vp-field);
    border: 1px solid var(--vp-field-line);
    border-radius: var(--radius-sm, 8px);
    user-select: all;
    overflow-wrap: anywhere;
    font-family: var(--font-mono);
    letter-spacing: var(--tracking-wide);
}

.two-factor__section[b-53vn94g99b] {
    display: flex;
    flex-direction: column;
    gap: var(--space-md);
}

.two-factor__section h2[b-53vn94g99b],
.two-factor__section p[b-53vn94g99b] {
    margin: 0;
}

.two-factor__section--ruled[b-53vn94g99b] {
    padding-top: var(--space-lg);
    border-top: 1px solid var(--vp-line);
}

.two-factor__status[b-53vn94g99b] {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: var(--space-sm);
    padding: var(--space-md);
    border: 1px solid var(--vp-line);
    border-radius: var(--radius-md);
}

.two-factor__status-icon[b-53vn94g99b] {
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1px solid var(--vp-cyan);
    color: var(--vp-cyan);
}

.two-factor__status-text[b-53vn94g99b] {
    display: flex;
    flex-direction: column;
    gap: var(--space-2xs);
}

.two-factor__status-text h2[b-53vn94g99b],
.two-factor__status-text p[b-53vn94g99b] {
    margin: 0;
}

.two-factor__status-text h2[b-53vn94g99b] {
    font-size: var(--step-0);
    line-height: 1.3;
}

.two-factor__codes[b-53vn94g99b] {
    list-style: none;
    counter-reset: two-factor-code;
    margin: 0;
    padding: var(--space-md);
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-xs) var(--space-md);
    background: var(--vp-field);
    border: 1px solid var(--vp-field-line);
    border-radius: var(--radius-md);
    font-family: var(--font-mono);
}

.two-factor__codes li[b-53vn94g99b] {
    counter-increment: two-factor-code;
    display: flex;
    align-items: baseline;
    gap: var(--space-xs);
}

.two-factor__codes li[b-53vn94g99b]::before {
    content: counter(two-factor-code, decimal-leading-zero);
    color: var(--vp-muted);
    font-size: 12px;
}

@media (max-width: 359px) {
    .two-factor__codes[b-53vn94g99b] {
        grid-template-columns: minmax(0, 1fr);
    }
}
