/* =========================================================
   HOME BUTTON - the public pages' replacement for a top bar.

   Positions are in px (not rem) so the button sits exactly where the
   landing page's hamburger does even on pages whose root font size
   shrinks on phones. Same spot, size and look as the landing page's hamburger button
   (.lp-menu-toggle in landing.css), but it is a plain link back to the
   landing page with a house icon instead of a sliding menu.
   Used by: login, register, forgot/reset password, 2FA, accept-invite,
   404, and the Terms / Privacy pages (500.php carries the same rules
   inline on purpose - see the note in that file).
   ========================================================= */

.home-btn {
    position: fixed;

    top: 20px;
    left: 20px;

    z-index: 1002;

    width: 58px;
    height: 58px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 0;

    border: 1px solid rgba(102,87,232,.18);
    border-radius: 50%;

    background: rgba(255,255,255,.92);

    color: #14141f;

    box-shadow:
        0 10px 30px rgba(35,28,85,.12),
        0 0 0 1px rgba(255,255,255,.7) inset;

    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);

    cursor: pointer;

    text-decoration: none;

    transition:
        background .2s ease,
        border-color .2s ease,
        box-shadow .2s ease,
        transform .2s ease;
}

.home-btn:hover {
    transform: translateY(-2px);

    border-color: rgba(102,87,232,.35);

    background: #ffffff;

    color: #14141f;

    box-shadow:
        0 14px 34px rgba(35,28,85,.16),
        0 0 24px rgba(102,87,232,.08);
}

.home-btn:focus-visible {
    outline: 2px solid #6657e8;
    outline-offset: 3px;
}

.home-btn svg {
    display: block;

    width: 24px;
    height: 24px;
}

@media (max-width: 640px) {

    .home-btn {
        top: 16px;
        left: 16px;

        width: 54px;
        height: 54px;
    }
}

@media (prefers-reduced-motion: reduce) {

    .home-btn {
        transition: none;
    }
}

@media print {

    .home-btn {
        display: none;
    }
}
