/* ==========================================================================
   RINALDO WIN - LOGIN
   PREMIUM CINEMATIC GLASS
   RESPONSIVE DESKTOP / TABLET / MOBILE
========================================================================== */


/* =========================================================
   ROOT
========================================================= */

:root {
    --gold: #ffc94b;
    --gold-light: #ffe9a3;
    --gold-bright: #ffd75a;
    --gold-deep: #d99217;

    --white: #f8f8fb;
    --muted: rgba(235, 239, 248, .72);

    --glass: rgba(15, 20, 34, .30);
    --glass-dark: rgba(7, 10, 18, .42);

    --glass-border: rgba(235, 241, 255, .34);

    --shadow: rgba(0, 0, 0, .58);
}


/* =========================================================
   RESET
========================================================= */

* {
    box-sizing: border-box;
}

html,
body {
    width: 100%;
    min-height: 100%;
    margin: 0;
}

body {
    min-height: 100vh;

    overflow-x: hidden;

    color: var(--white);

    background: #05070d;

    font-family:
        Inter,
        ui-sans-serif,
        system-ui,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        sans-serif;
}

button,
input {
    font: inherit;
}

button,
a {
    -webkit-tap-highlight-color: transparent;
}

a {
    color: inherit;
    text-decoration: none;
}


/* =========================================================
   LOGIN PAGE
========================================================= */

.login-page {
    position: relative;

    min-height: 100svh;

    overflow: hidden;

    isolation: isolate;

    background:
        linear-gradient(
            180deg,
            rgba(0, 0, 0, .28) 0%,
            rgba(2, 7, 17, .04) 30%,
            rgba(1, 4, 10, .10) 70%,
            rgba(0, 0, 0, .52) 100%
        ),
        url("../images/fundallogin.png")
        center center / cover no-repeat fixed;
}

.login-page::before {
    content: "";

    position: absolute;

    inset: 0;

    z-index: -1;

    pointer-events: none;

    background:
        radial-gradient(
            circle at 51% 38%,
            rgba(83, 116, 187, .14),
            transparent 31%
        ),
        radial-gradient(
            circle at 80% 72%,
            rgba(255, 184, 57, .10),
            transparent 24%
        ),
        linear-gradient(
            90deg,
            rgba(0,0,0,.40),
            transparent 36%,
            rgba(0,0,0,.10)
        );
}

.login-page::after {
    content: "";

    position: absolute;

    inset: 0;

    z-index: -1;

    pointer-events: none;

    box-shadow:
        inset 0 0 180px rgba(0,0,0,.38);
}


/* =========================================================
   BACKGROUND GLOW
========================================================= */

.background-glow {
    position: absolute;

    pointer-events: none;

    filter: blur(55px);

    opacity: .55;

    border-radius: 50%;
}

.background-glow--one {
    width: 260px;
    height: 260px;

    left: -100px;
    top: 15%;

    background:
        rgba(255, 170, 52, .13);
}

.background-glow--two {
    width: 300px;
    height: 300px;

    right: -120px;
    top: 32%;

    background:
        rgba(48, 84, 177, .16);
}


/* =========================================================
   GLASS REFLECTION
========================================================= */

.glass-login {
    position: relative;

    overflow: hidden;
}

.glass-login::after {
    content: "";

    position: absolute;

    top: 0;
    left: -180px;

    width: 150px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            transparent 0%,
            rgba(255,255,255,.05) 15%,
            rgba(255,255,255,.9) 50%,
            rgba(255,220,150,.65) 70%,
            transparent 100%
        );

    filter:
        blur(.5px)
        drop-shadow(0 0 5px rgba(255,220,150,.65))
        drop-shadow(0 0 14px rgba(255,210,120,.25));

    animation:
        glassReflectionMove 4.5s ease-in-out infinite;

    pointer-events: none;

    z-index: 20;
}

@keyframes glassReflectionMove {

    0% {
        left: -180px;
        opacity: 0;
    }

    12% {
        opacity: 1;
    }

    50% {
        left: calc(100% - 20px);
        opacity: 1;
    }

    65% {
        left: calc(100% + 40px);
        opacity: 0;
    }

    100% {
        left: calc(100% + 40px);
        opacity: 0;
    }
}


/* =========================================================
   LOGIN CONTENT DECORATION
========================================================= */

.glass-login .login-content {
    overflow: visible;
}

.glass-login .login-content::before {
    content: "";

    position: absolute;

    z-index: -1;

    left: 50%;
    top: 56px;

    width: 365px;
    height: 125px;

    transform:
        translateX(-50%)
        rotate(10deg);

    border:
        1px solid rgba(255, 218, 155, .22);

    border-left-color:
        transparent;

    border-radius: 50%;

    pointer-events: none;

    box-shadow:
        0 0 14px rgba(255,200,90,.06);
}

.glass-login .login-content::after {
    content: "";

    position: absolute;

    z-index: -1;

    top: 111px;

    left: calc(50% + 187px);

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: #fff0bd;

    box-shadow:
        0 0 7px #fff0bd,
        0 0 20px rgba(255, 188, 51, .95),
        0 0 42px rgba(255, 188, 51, .55);

    pointer-events: none;
}


/* =========================================================
   CROWN DECORATION
========================================================= */

.crown-wrap::before,
.crown-wrap::after {
    content: "";

    position: absolute;

    border-radius: 50%;

    pointer-events: none;
}

.crown-wrap::before {
    width: 4px;
    height: 4px;

    left: -42px;
    top: 38px;

    background: #fff3ca;

    box-shadow:
        0 0 7px #fff3ca,
        0 0 18px rgba(255, 188, 53, .85);
}

.crown-wrap::after {
    width: 3px;
    height: 3px;

    right: -43px;
    top: 24px;

    background: #dce9ff;

    box-shadow:
        0 0 7px #dce9ff,
        0 0 18px rgba(117, 164, 255, .7);
}


/* =========================================================
   TOPBAR
========================================================= */

.topbar {
    position: absolute;

    z-index: 5;

    top: 0;
    left: 0;

    width: 100%;
    height: 142px;

    padding:
        52px 5.6vw 0;

    display: flex;

    align-items: flex-start;

    justify-content: space-between;
}

.topbar__brand {
    display: flex;

    align-items: center;

    gap: 26px;

    color:
        rgba(245, 245, 248, .57);

    font-size: 12px;

    font-weight: 500;

    letter-spacing: 4px;
}

.topbar__brand::after {
    content: "";

    width: min(390px, 35vw);

    height: 1px;

    background:
        linear-gradient(
            90deg,
            rgba(255,255,255,.17),
            rgba(255,201,75,.24),
            transparent
        );
}

.brand-dot {
    width: 4px;
    height: 4px;

    flex: 0 0 4px;

    border-radius: 50%;

    background: #e9b84b;

    box-shadow:
        0 0 12px rgba(255, 201, 75, .8);
}


/* =========================================================
   EXPLORE BUTTON
========================================================= */

.explore-btn {
    min-width: 180px;
    height: 48px;

    padding:
        0 18px 0 25px;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 20px;

    border:
        1px solid rgba(255,255,255,.15);

    border-radius: 28px;

    background:
        rgba(6, 10, 20, .28);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.07),
        0 12px 35px rgba(0,0,0,.18);

    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);

    color:
        rgba(240,242,247,.64);

    font-size: 13px;

    transition:
        .25s ease;
}

.explore-btn:hover {
    border-color:
        rgba(255,201,75,.45);

    color: #fff;

    transform:
        translateY(-1px);
}

.explore-arrow {
    color: #eac25f;

    font-size: 20px;
}


/* =========================================================
   LOGIN STAGE
========================================================= */

.login-stage {
    min-height: 100svh;

    display: flex;

    align-items: center;

    justify-content: center;

    padding:
        90px 20px 105px;
}


/* =========================================================
   MAIN GLASS CARD
========================================================= */

.glass-login {
    position: relative;

    width: min(520px, 92vw);

    min-height: 865px;

    overflow: hidden;

    border:
        1px solid rgba(235,241,255,.48);

    border-radius: 40px;

    background:
        rgba(255,255,255,.012);

    box-shadow:
        0 0 0 1px rgba(255,255,255,.08),
        0 0 25px rgba(255,255,255,.06),
        0 0 55px rgba(95,145,255,.08),
        0 0 100px rgba(255,190,70,.06),
        0 35px 100px rgba(0,0,0,.42),
        inset 0 1px 0 rgba(255,255,255,.40),
        inset 1px 0 0 rgba(255,255,255,.12);

    backdrop-filter:
        blur(1.5px)
        saturate(108%);

    -webkit-backdrop-filter:
        blur(1.5px)
        saturate(108%);

    animation:
        glassGlow 5s ease-in-out infinite;
}

.glass-login::before {
    content: "";

    position: absolute;

    inset: 0;

    border-radius: inherit;

    pointer-events: none;

    background:
        linear-gradient(
            115deg,
            rgba(255,255,255,.13) 0%,
            rgba(255,255,255,.035) 18%,
            transparent 42%,
            transparent 72%,
            rgba(255,255,255,.035) 100%
        );

    box-shadow:
        inset 0 0 35px rgba(255,255,255,.025);
}


/* =========================================================
   GLASS REFLECTION
========================================================= */

.glass-reflection {
    position: absolute;

    width: 180px;
    height: 600px;

    left: -160px;
    top: -100px;

    transform:
        rotate(18deg);

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.035),
            transparent
        );

    filter: blur(12px);

    opacity: .45;

    pointer-events: none;
}

.glass-highlight {
    position: absolute;

    inset: 0;

    border-radius: inherit;

    pointer-events: none;

    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,.035);
}


/* =========================================================
   LOGIN CONTENT
========================================================= */

.login-content {
    position: relative;

    z-index: 2;

    padding:
        55px 48px 42px;
}


/* =========================================================
   CROWN
========================================================= */

.crown-wrap {
    position: relative;

    width: 120px;
    height: 100px;

    margin:
        0 auto 13px;

    display: grid;

    place-items: center;
}

.crown-icon {
    position: relative;

    width: 112px;
    height: 94px;

    filter:
        drop-shadow(0 0 8px rgba(255, 205, 89, .8))
        drop-shadow(0 0 28px rgba(255, 174, 35, .38));
}

.crown-glow {
    position: absolute;

    width: 72px;
    height: 72px;

    border-radius: 50%;

    background:
        rgba(255, 186, 42, .20);

    filter:
        blur(26px);
}


/* =========================================================
   TITLE
========================================================= */

.login-content h1 {
    margin: 0;

    text-align: center;

    font-size:
        clamp(38px, 4vw, 50px);

    line-height: 1.08;

    font-weight: 750;

    letter-spacing: -1.8px;
}

.login-content h1 span {
    color: var(--gold);

    text-shadow:
        0 0 28px rgba(255, 194, 64, .24);
}

.subtitle {
    margin:
        15px 0 45px;

    text-align: center;

    color:
        rgba(245,246,250,.78);

    font-size: 14px;

    letter-spacing: 1.05px;
}


/* =========================================================
   FORM
========================================================= */

.login-form {
    display: grid;

    gap: 18px;
}


/* =========================================================
   INPUT BOX
   PREMIUM GOLD GLASS
========================================================= */

.input-box {
    position: relative;

    height: 69px;

    display: flex;

    align-items: center;

    overflow: hidden;

    border:
        1px solid rgba(255, 205, 92, .72);

    border-radius: 21px;

    background:
        linear-gradient(
            135deg,
            rgba(3, 6, 13, .88),
            rgba(13, 11, 8, .82) 55%,
            rgba(29, 20, 7, .76)
        );

    box-shadow:
        0 0 0 1px rgba(255, 197, 65, .08),
        0 0 18px rgba(255, 190, 45, .10),
        0 12px 30px rgba(0,0,0,.18),
        inset 0 1px 0 rgba(255,255,255,.08),
        inset 0 0 22px rgba(255, 190, 55, .025);

    backdrop-filter:
        blur(14px);

    -webkit-backdrop-filter:
        blur(14px);

    transition:
        border-color .25s ease,
        box-shadow .25s ease,
        background .25s ease;
}


/* Interior shine */

.input-box::before {
    content: "";

    position: absolute;

    inset: 1px;

    border-radius: 20px;

    pointer-events: none;

    background:
        linear-gradient(
            110deg,
            rgba(255,255,255,.07),
            transparent 24%,
            transparent 68%,
            rgba(255,201,75,.055)
        );

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.08),
        inset 0 -1px 0 rgba(0,0,0,.30);

    z-index: 0;
}


/* Subtle gold light inside */

.input-box::after {
    content: "";

    position: absolute;

    left: 70px;
    right: 55px;
    bottom: 0;

    height: 1px;

    pointer-events: none;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,201,75,.28),
            transparent
        );

    box-shadow:
        0 0 12px rgba(255,201,75,.18);

    z-index: 1;
}


.input-box:hover {
    border-color:
        rgba(255, 215, 115, .92);

    box-shadow:
        0 0 0 1px rgba(255, 201, 75, .10),
        0 0 24px rgba(255, 190, 45, .14),
        0 14px 34px rgba(0,0,0,.20),
        inset 0 1px 0 rgba(255,255,255,.10),
        inset 0 0 28px rgba(255,190,55,.04);
}


.input-box:focus-within {
    border-color:
        #ffd96b;

    background:
        linear-gradient(
            135deg,
            rgba(4, 6, 11, .94),
            rgba(18, 13, 6, .92) 55%,
            rgba(31, 20, 5, .88)
        );

    box-shadow:
        0 0 0 2px rgba(255, 205, 92, .10),
        0 0 20px rgba(255, 195, 60, .20),
        0 0 42px rgba(255, 185, 45, .10),
        inset 0 1px 0 rgba(255,255,255,.13),
        inset 0 0 25px rgba(255, 190, 55, .055);
}


/* =========================================================
   INPUT ICON
========================================================= */

.input-icon {
    position: relative;

    z-index: 3;

    width: 72px;

    flex: 0 0 72px;

    display: grid;

    place-items: center;

    color:
        #ffd04d;

    filter:
        drop-shadow(0 0 5px rgba(255, 200, 65, .45))
        drop-shadow(0 0 12px rgba(255, 185, 35, .18));

    transition:
        color .25s ease,
        filter .25s ease;
}

.input-box:focus-within .input-icon {
    color:
        #ffe28b;

    filter:
        drop-shadow(0 0 7px rgba(255, 218, 120, .75))
        drop-shadow(0 0 18px rgba(255, 190, 45, .35));
}

.input-icon svg {
    width: 26px;
    height: 26px;
}


/* =========================================================
   INPUT FIELD
   GOLD TEXT + PREMIUM INNER GLASS
========================================================= */

.input-box input {
    position: relative;

    z-index: 2;

    min-width: 0;

    flex: 1;

    width: 100%;
    height: calc(100% - 8px);

    margin:
        4px 4px 4px 0;

    padding:
        0 18px 0 13px;

    border: 0;

    outline: 0;

    border-radius:
        17px;

    color:
        #ffd75a !important;

    -webkit-text-fill-color:
        #ffd75a !important;

    background:
        linear-gradient(
            135deg,
            rgba(0,0,0,.34),
            rgba(16,12,5,.42)
        ) !important;

    background-color:
        rgba(4,5,9,.38) !important;

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.045),
        inset 0 0 18px rgba(255, 190, 50, .025),
        inset 0 -1px 0 rgba(0,0,0,.30);

    font-size: 16px;

    font-weight: 700;

    letter-spacing:
        .2px;

    caret-color:
        #ffe7a0;

    text-shadow:
        0 0 5px rgba(255, 215, 90, .58),
        0 0 12px rgba(255, 195, 55, .32),
        0 0 22px rgba(255, 180, 30, .14);

    color-scheme:
        dark;

    transition:
        color .2s ease,
        background .2s ease,
        box-shadow .2s ease,
        text-shadow .2s ease;
}


/* Input focus */

.input-box input:focus {
    color:
        #ffe08a !important;

    -webkit-text-fill-color:
        #ffe08a !important;

    background:
        linear-gradient(
            135deg,
            rgba(0,0,0,.42),
            rgba(22,15,5,.50)
        ) !important;

    text-shadow:
        0 0 6px rgba(255, 220, 125, .75),
        0 0 14px rgba(255, 195, 60, .42),
        0 0 25px rgba(255, 180, 30, .18);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.06),
        inset 0 0 20px rgba(255, 190, 55, .035);
}


/* Selectarea textului */

.input-box input::selection {
    color: #211703 !important;

    -webkit-text-fill-color: #211703 !important;

    background:
        rgba(255, 211, 91, .88);
}


/* Placeholder */

.input-box input::placeholder {
    color:
        rgba(255, 231, 170, .48);

    -webkit-text-fill-color:
        rgba(255, 231, 170, .48);

    text-shadow:
        0 0 5px rgba(255, 205, 100, .12);

    font-weight:
        500;
}


/* =========================================================
   CHROME / EDGE AUTOFILL
   FĂRĂ ALB
   TEXT AURIU
========================================================= */

.input-box input:-webkit-autofill,
.input-box input:-webkit-autofill:hover,
.input-box input:-webkit-autofill:focus,
.input-box input:-webkit-autofill:active {

    color:
        #ffd75a !important;

    -webkit-text-fill-color:
        #ffd75a !important;

    caret-color:
        #ffe19a !important;

    font-weight:
        700 !important;

    text-shadow:
        0 0 5px rgba(255, 215, 90, .58),
        0 0 13px rgba(255, 195, 55, .30),
        0 0 22px rgba(255, 180, 30, .12) !important;

    -webkit-box-shadow:
        0 0 0 1000px rgba(7, 7, 8, .94) inset !important;

    box-shadow:
        0 0 0 1000px rgba(7, 7, 8, .94) inset !important;

    border-radius:
        17px;

    background:
        linear-gradient(
            135deg,
            rgba(0,0,0,.90),
            rgba(20,14,5,.90)
        ) !important;

    background-color:
        rgba(7,7,8,.94) !important;

    transition:
        background-color 99999s ease-in-out 0s;
}


/* Autofill focus */

.input-box input:-webkit-autofill:focus {

    color:
        #ffe08a !important;

    -webkit-text-fill-color:
        #ffe08a !important;

    -webkit-box-shadow:
        0 0 0 1000px rgba(8, 7, 6, .96) inset !important;

    box-shadow:
        0 0 0 1000px rgba(8, 7, 6, .96) inset !important;

    text-shadow:
        0 0 6px rgba(255, 220, 125, .72),
        0 0 15px rgba(255, 195, 60, .40),
        0 0 25px rgba(255, 180, 30, .16) !important;
}


/* Firefox autofill */

.input-box input:-moz-autofill {

    color:
        #ffd75a !important;

    background:
        rgba(7, 7, 8, .94) !important;

    box-shadow:
        0 0 0 1000px rgba(7, 7, 8, .94) inset !important;

    text-shadow:
        0 0 5px rgba(255, 215, 90, .58),
        0 0 13px rgba(255, 195, 55, .30);
}


/* =========================================================
   PASSWORD TOGGLE
========================================================= */

.password-toggle {
    position: relative;

    z-index: 4;

    width: 58px;
    height: 100%;

    flex: 0 0 58px;

    display: grid;

    place-items: center;

    border: 0;

    background:
        transparent;

    color:
        rgba(245,247,252,.65);

    cursor: pointer;

    transition:
        .2s ease;
}

.password-toggle:hover {
    color:
        var(--gold-light);

    filter:
        drop-shadow(0 0 8px rgba(255,205,85,.35));
}

.password-toggle svg {
    width: 26px;
    height: 26px;
}


/* =========================================================
   FORM OPTIONS
========================================================= */

.form-options {
    display: flex;

    align-items: center;

    justify-content: space-between;

    margin:
        1px 3px 2px;

    font-size: 13px;

    gap: 15px;
}

.remember {
    display: flex;

    align-items: center;

    gap: 10px;

    color:
        rgba(246,247,251,.83);

    cursor: pointer;
}

.remember input {
    position: absolute;

    opacity: 0;

    pointer-events: none;
}

.custom-check {
    width: 26px;
    height: 26px;

    flex: 0 0 26px;

    display: grid;

    place-items: center;

    border-radius: 6px;

    border:
        1px solid rgba(255,255,255,.32);

    background:
        rgba(255,255,255,.06);

    color:
        transparent;

    font-weight: 900;

    transition:
        .2s ease;
}

.remember input:checked + .custom-check {
    background:
        #ffe069;

    border-color:
        #ffe069;

    color:
        #26200b;

    box-shadow:
        0 0 18px rgba(255, 205, 69, .28);
}

.forgot-link {
    color:
        rgba(247,248,251,.78);

    transition:
        .2s ease;
}

.forgot-link:hover {
    color:
        var(--gold-light);
}


/* =========================================================
   LOGIN BUTTON
========================================================= */

.login-button {
    position: relative;

    width: 100%;

    height: 67px;

    display: flex;

    align-items: center;

    justify-content: center;

    border:
        1px solid #ffe092;

    border-radius: 34px;

    background:
        linear-gradient(
            100deg,
            rgba(20,16,10,.92),
            rgba(48,35,15,.92) 45%,
            #ffc32e 100%
        );

    color:
        #fff;

    font-size: 16px;

    font-weight: 700;

    cursor: pointer;

    overflow: hidden;

    box-shadow:
        0 0 0 1px rgba(255,255,255,.10) inset,
        0 10px 28px rgba(255, 176, 34, .22),
        0 0 28px rgba(255, 192, 60, .18);

    transition:
        transform .22s ease,
        box-shadow .22s ease;
}

.login-button::before {
    content: "";

    position: absolute;

    top: -40%;
    left: -35%;

    width: 32%;
    height: 180%;

    transform:
        rotate(25deg);

    background:
        rgba(255,255,255,.18);

    filter:
        blur(8px);

    transition:
        left .6s ease;
}

.login-button:hover {
    transform:
        translateY(-2px);

    box-shadow:
        0 0 0 1px rgba(255,255,255,.14) inset,
        0 14px 34px rgba(255, 176, 34, .30),
        0 0 38px rgba(255, 192, 60, .22);
}

.login-button:hover::before {
    left: 115%;
}

.button-arrow {
    position: absolute;

    right: 29px;

    font-size: 29px;

    line-height: 1;

    font-weight: 300;
}


/* =========================================================
   SOCIAL DIVIDER
========================================================= */

.social-divider {
    display: grid;

    grid-template-columns:
        1fr auto 1fr;

    align-items: center;

    gap: 16px;

    margin:
        44px 0 25px;
}

.social-divider span {
    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.22)
        );
}

.social-divider span:last-child {
    background:
        linear-gradient(
            90deg,
            rgba(255,255,255,.22),
            transparent
        );
}

.social-divider em {
    color:
        rgba(245,246,250,.76);

    font-size: 13px;

    font-style: normal;
}


/* =========================================================
   SOCIAL BUTTONS
========================================================= */

.social-login {
    display: flex;

    justify-content: center;

    gap: 22px;

    flex-wrap: wrap;
}

.social-btn {
    width: 66px;
    height: 66px;

    flex: 0 0 66px;

    display: grid;

    place-items: center;

    border:
        1px solid rgba(255,255,255,.23);

    border-radius: 50%;

    background:
        rgba(7, 11, 21, .30);

    color:
        #fff;

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.12),
        0 10px 25px rgba(0,0,0,.16);

    backdrop-filter:
        blur(13px);

    -webkit-backdrop-filter:
        blur(13px);

    cursor: pointer;

    transition:
        .22s ease;
}

.social-btn:hover {
    transform:
        translateY(-3px);

    border-color:
        rgba(255,205,92,.60);

    box-shadow:
        0 0 25px rgba(255, 190, 52, .15),
        inset 0 1px 0 rgba(255,255,255,.16);
}

.social-btn--google strong {
    font-size: 25px;

    font-family:
        Arial,
        sans-serif;

    color: #fff;

    text-shadow:
        1px 0 #4285f4,
        -1px 0 #ea4335,
        0 1px #34a853;
}

.social-btn--apple svg {
    width: 27px;
    height: 27px;
}

.social-btn--discord span {
    color:
        #a9a2ff;

    font-size: 28px;
}


/* =========================================================
   REGISTER
========================================================= */

.register-line {
    margin-top: 35px;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 10px;

    color:
        rgba(241,242,247,.78);

    font-size: 13px;

    line-height: 1;

    text-align: center;
}

.register-line a {
    display: inline-flex;

    align-items: center;

    gap: 10px;

    color:
        var(--gold-light);

    transition:
        .2s ease;
}

.register-line a:hover {
    text-shadow:
        0 0 15px rgba(255,201,75,.4);
}

.register-line b {
    margin: 0;

    font-size: 20px;

    line-height: 1;

    font-weight: 400;

    transform:
        translateY(-1px);
}


/* =========================================================
   FORM MESSAGE
========================================================= */

.form-message {
    margin:
        -20px 0 22px;

    padding:
        12px 15px;

    border-radius:
        13px;

    font-size:
        13px;
}

.form-message--error {
    color:
        #ffd5d5;

    border:
        1px solid rgba(255,80,80,.30);

    background:
        rgba(120,20,20,.20);
}


/* =========================================================
   BOTTOM TAGLINE
========================================================= */

.bottom-tagline {
    position: absolute;

    left: 50%;
    bottom: 94px;

    transform:
        translateX(-50%);

    display: flex;

    flex-direction: column;

    align-items: center;

    gap: 25px;

    color:
        rgba(244,245,250,.38);

    font-size: 9px;

    letter-spacing: 5px;

    white-space: nowrap;
}

.bottom-chevron {
    color:
        rgba(255,201,75,.72);

    font-size: 28px;

    line-height: 1;
}


/* =========================================================
   FOOTER
========================================================= */

.footer {
    position: absolute;

    left: 5.6vw;
    right: 5.6vw;
    bottom: 25px;

    display: flex;

    align-items: center;

    color:
        rgba(242,243,248,.25);

    font-size: 9px;

    letter-spacing: 1.8px;
}

.footer-copy {
    position: absolute;

    left: 50%;

    transform:
        translateX(-50%);

    margin: 0;

    white-space: nowrap;
}


/* =========================================================
   TABLET
   761px — 1100px
========================================================= */

@media (max-width: 1100px) {

    .topbar {
        padding-left: 35px;
        padding-right: 35px;
    }

    .footer {
        left: 35px;
        right: 35px;
    }

    .glass-login {
        width:
            min(520px, 90vw);
    }
}


/* =========================================================
   TABLET / MOBILE
   <= 760px
========================================================= */

@media (max-width: 760px) {

    .login-page {
        min-height: 100svh;

        background-attachment:
            scroll;
    }

    /* BACKGROUND */

    .background-glow--one {
        width: 180px;
        height: 180px;

        left: -90px;

        opacity: .38;
    }

    .background-glow--two {
        width: 200px;
        height: 200px;

        right: -100px;

        opacity: .35;
    }

    /* TOPBAR */

    .topbar {
        height: 76px;

        padding:
            20px 16px 0;
    }

    .topbar__brand {
        gap: 8px;

        font-size: 8px;

        letter-spacing: 2px;
    }

    .topbar__brand::after {
        display: none;
    }

    .brand-dot {
        width: 3px;
        height: 3px;

        flex-basis: 3px;
    }

    .explore-btn {
        min-width: 44px;

        width: 44px;
        height: 44px;

        padding: 0;

        justify-content: center;

        border-radius: 50%;
    }

.explore-btn span:first-child {
    display: inline !important;
    white-space: nowrap;
}

.explore-btn {
    min-width: 145px;
    width: auto;
    height: 44px;

    padding: 0 15px 0 20px;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;

    border-radius: 24px;
}

.explore-arrow {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;

    font-size: 19px;
    color: #eac25f;
}

    .explore-arrow {
        font-size: 19px;
    }

    /* STAGE */

    .login-stage {
        min-height: 100svh;

        padding:
            82px 12px 70px;
    }

    /* CARD */

    .glass-login {
        width: 100%;

        max-width: 520px;

        min-height: 0;

        border-radius: 30px;
    }

    /* CONTENT */

    .login-content {
        padding:
            38px 23px 32px;
    }

    /* DECORATIVE ARC */

    .glass-login .login-content::before {
        width: 280px;
        height: 105px;

        top: 50px;
    }

    .glass-login .login-content::after {
        left:
            calc(50% + 142px);

        top: 98px;
    }

    /* CROWN */

    .crown-wrap {
        width: 100px;
        height: 85px;

        margin-bottom: 10px;
    }

    .crown-icon {
        width: 94px;
        height: 80px;
    }

    .crown-glow {
        width: 60px;
        height: 60px;
    }

    .crown-wrap::before {
        left: -28px;
        top: 32px;
    }

    .crown-wrap::after {
        right: -28px;
        top: 20px;
    }

    /* TITLE */

    .login-content h1 {
        font-size:
            clamp(32px, 9vw, 40px);

        letter-spacing:
            -1.2px;
    }

    .subtitle {
        margin:
            12px 0 30px;

        font-size: 13px;

        line-height: 1.5;
    }

    /* FORM */

    .login-form {
        gap: 15px;
    }

    /* INPUT */

    .input-box {
        height: 62px;

        border-radius: 18px;
    }

    .input-box::before {
        border-radius: 17px;
    }

    .input-icon {
        width: 57px;

        flex-basis: 57px;
    }

    .input-icon svg {
        width: 23px;
        height: 23px;
    }

    .input-box input {
        height: calc(100% - 8px);

        margin:
            4px 4px 4px 0;

        border-radius:
            14px;

        font-size: 15px;

        font-weight: 700;

        padding:
            0 8px 0 10px;

        color:
            #ffd75a !important;

        -webkit-text-fill-color:
            #ffd75a !important;

        text-shadow:
            0 0 5px rgba(255,215,90,.55),
            0 0 12px rgba(255,195,55,.28);
    }

    .password-toggle {
        width: 50px;

        flex-basis: 50px;
    }

    .password-toggle svg {
        width: 23px;
        height: 23px;
    }

    /* OPTIONS */

    .form-options {
        margin:
            1px 2px;

        font-size: 12px;

        gap: 10px;
    }

    .remember {
        gap: 8px;
    }

    .custom-check {
        width: 23px;
        height: 23px;

        flex-basis: 23px;
    }

    /* BUTTON */

    .login-button {
        height: 62px;

        border-radius: 31px;

        font-size: 15px;
    }

    .button-arrow {
        right: 23px;

        font-size: 25px;
    }

    /* SOCIAL DIVIDER */

    .social-divider {
        gap: 11px;

        margin:
            32px 0 21px;
    }

    .social-divider em {
        font-size: 11px;

        white-space: nowrap;
    }

    /* SOCIAL */

    .social-login {
        gap: 16px;
    }

    .social-btn {
        width: 58px;
        height: 58px;

        flex-basis: 58px;
    }

    .social-btn--google strong {
        font-size: 22px;
    }

    .social-btn--apple svg {
        width: 24px;
        height: 24px;
    }

    .social-btn--discord span {
        font-size: 25px;
    }

    /* REGISTER */

    .register-line {
        margin-top: 27px;

        font-size: 12px;

        gap: 7px;
    }

    .register-line a {
        gap: 7px;
    }

    .register-line b {
        font-size: 18px;
    }

    /* BOTTOM */

    .bottom-tagline {
        display: none;
    }

    /* FOOTER */

    .footer {
        left: 15px;
        right: 15px;

        bottom:
            max(12px, env(safe-area-inset-bottom));

        justify-content: center;

        font-size: 8px;

        letter-spacing: 1.3px;
    }

    .footer-copy {
        display: none;
    }
}


/* =========================================================
   MOBILE
   <= 480px
========================================================= */

@media (max-width: 480px) {

    .login-page {
        background-position:
            center center;
    }

    .topbar {
        padding:
            16px 12px 0;
    }

    .topbar__brand {
        font-size: 7px;

        letter-spacing: 1.7px;
    }

    .explore-btn {
        width: 40px;
        height: 40px;
    }

    .login-stage {
        padding:
            70px 8px 60px;
    }

    .glass-login {
        border-radius: 25px;
    }

    .login-content {
        padding:
            30px 17px 26px;
    }

    /* ARC */

    .glass-login .login-content::before {
        width: 230px;
        height: 85px;

        top: 43px;
    }

    .glass-login .login-content::after {
        left:
            calc(50% + 116px);

        top: 82px;

        width: 5px;
        height: 5px;
    }

    /* CROWN */

    .crown-wrap {
        width: 88px;
        height: 75px;
    }

    .crown-icon {
        width: 82px;
        height: 70px;
    }

    .crown-glow {
        width: 50px;
        height: 50px;

        filter:
            blur(20px);
    }

    .crown-wrap::before {
        left: -22px;

        width: 3px;
        height: 3px;
    }

    .crown-wrap::after {
        right: -22px;

        width: 2px;
        height: 2px;
    }

    /* TITLE */

    .login-content h1 {
        font-size:
            clamp(28px, 8.5vw, 36px);

        letter-spacing:
            -1px;
    }

    .subtitle {
        margin:
            10px 0 25px;

        font-size: 12px;
    }

    /* INPUT */

    .login-form {
        gap: 13px;
    }

    .input-box {
        height: 58px;

        border-radius: 16px;
    }

    .input-box::before {
        border-radius: 15px;
    }

    .input-icon {
        width: 49px;

        flex-basis: 49px;
    }

    .input-icon svg {
        width: 21px;
        height: 21px;
    }

    .input-box input {
        height: calc(100% - 8px);

        margin:
            4px 4px 4px 0;

        padding:
            0 6px 0 8px;

        border-radius:
            12px;

        font-size: 14px;

        font-weight: 700;

        color:
            #ffd75a !important;

        -webkit-text-fill-color:
            #ffd75a !important;

        text-shadow:
            0 0 4px rgba(255,215,90,.52),
            0 0 10px rgba(255,195,55,.25);
    }

    .password-toggle {
        width: 45px;

        flex-basis: 45px;
    }

    .password-toggle svg {
        width: 21px;
        height: 21px;
    }

    /* OPTIONS */

    .form-options {
        font-size: 11px;
    }

    .custom-check {
        width: 21px;
        height: 21px;

        flex-basis: 21px;
    }

    /* BUTTON */

    .login-button {
        height: 58px;

        border-radius: 29px;

        font-size: 14px;
    }

    .button-arrow {
        right: 19px;

        font-size: 23px;
    }

    /* SOCIAL */

    .social-divider {
        margin:
            27px 0 18px;
    }

    .social-divider em {
        font-size: 10px;
    }

    .social-login {
        gap: 12px;
    }

    .social-btn {
        width: 53px;
        height: 53px;

        flex-basis: 53px;
    }

    .social-btn--google strong {
        font-size: 20px;
    }

    .social-btn--apple svg {
        width: 22px;
        height: 22px;
    }

    .social-btn--discord span {
        font-size: 22px;
    }

    /* REGISTER */

    .register-line {
        margin-top: 23px;

        font-size: 11px;

        flex-wrap: wrap;
    }

    .register-line b {
        font-size: 16px;
    }

    .footer {
        font-size: 7px;

        letter-spacing: 1px;
    }
}


/* =========================================================
   VERY SMALL PHONES
   <= 360px
========================================================= */

@media (max-width: 360px) {

    .topbar {
        padding:
            13px 9px 0;
    }

    .topbar__brand {
        font-size: 6px;

        letter-spacing: 1.3px;
    }

    .explore-btn {
        width: 36px;
        height: 36px;
    }

    .login-stage {
        padding:
            62px 6px 52px;
    }

    .glass-login {
        border-radius: 22px;
    }

    .login-content {
        padding:
            26px 13px 22px;
    }

    /* CROWN */

    .crown-wrap {
        width: 78px;
        height: 67px;
    }

    .crown-icon {
        width: 73px;
        height: 62px;
    }

    /* TITLE */

    .login-content h1 {
        font-size: 27px;

        letter-spacing:
            -.8px;
    }

    .subtitle {
        font-size: 11px;

        margin-bottom: 21px;
    }

    /* INPUT */

    .input-box {
        height: 54px;

        border-radius: 14px;
    }

    .input-box::before {
        border-radius: 13px;
    }

    .input-icon {
        width: 43px;

        flex-basis: 43px;
    }

    .input-icon svg {
        width: 19px;
        height: 19px;
    }

    .input-box input {
        height: calc(100% - 8px);

        margin:
            4px 3px 4px 0;

        padding:
            0 4px 0 7px;

        border-radius:
            10px;

        font-size: 13px;

        font-weight: 700;

        color:
            #ffd75a !important;

        -webkit-text-fill-color:
            #ffd75a !important;

        text-shadow:
            0 0 4px rgba(255,215,90,.48),
            0 0 9px rgba(255,195,55,.22);
    }

    .password-toggle {
        width: 41px;

        flex-basis: 41px;
    }

    .password-toggle svg {
        width: 19px;
        height: 19px;
    }

    /* OPTIONS */

    .form-options {
        font-size: 10px;

        gap: 5px;
    }

    .custom-check {
        width: 19px;
        height: 19px;

        flex-basis: 19px;
    }

    /* BUTTON */

    .login-button {
        height: 54px;

        font-size: 13px;
    }

    .button-arrow {
        right: 16px;

        font-size: 21px;
    }

    /* SOCIAL */

    .social-divider {
        gap: 8px;

        margin:
            23px 0 16px;
    }

    .social-divider em {
        font-size: 9px;
    }

    .social-login {
        gap: 9px;
    }

    .social-btn {
        width: 48px;
        height: 48px;

        flex-basis: 48px;
    }

    .social-btn--google strong {
        font-size: 18px;
    }

    .social-btn--apple svg {
        width: 20px;
        height: 20px;
    }

    .social-btn--discord span {
        font-size: 20px;
    }

    /* REGISTER */

    .register-line {
        margin-top: 19px;

        font-size: 10px;
    }

    .register-line b {
        font-size: 14px;
    }

    .footer {
        bottom:
            max(8px, env(safe-area-inset-bottom));

        font-size: 6px;
    }
}


/* =========================================================
   SHORT DESKTOP SCREENS
========================================================= */

@media (max-height: 850px) and (min-width: 761px) {

    .login-stage {
        padding-top: 72px;
        padding-bottom: 72px;
    }

    .glass-login {
        min-height: 780px;
    }

    .login-content {
        padding-top: 30px;
        padding-bottom: 28px;
    }

    .crown-wrap {
        transform:
            scale(.82);

        margin-top: -8px;
        margin-bottom: -4px;
    }

    .subtitle {
        margin-bottom: 28px;
    }

    .social-divider {
        margin-top: 28px;
        margin-bottom: 18px;
    }

    .register-line {
        margin-top: 24px;
    }
}


/* =========================================================
   ERROR / LOADING
========================================================= */

.input-box.input-error {
    border-color:
        rgba(255, 88, 88, .85);

    box-shadow:
        0 0 0 3px rgba(255, 70, 70, .08);
}

.login-button.is-loading {
    opacity: .78;

    pointer-events: none;
}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    *,
    *::before,
    *::after {
        scroll-behavior:
            auto !important;

        transition:
            none !important;

        animation:
            none !important;
    }
}


/* =========================================================
   TOUCH DEVICES
   NU PĂSTRĂM HOVER-UL AGRESIV PE TELEFON
========================================================= */

@media (hover: none) and (pointer: coarse) {

    .login-button:hover {
        transform:
            none;
    }

    .social-btn:hover {
        transform:
            none;
    }

    .explore-btn:hover {
        transform:
            none;
    }

    .password-toggle:hover {
        color:
            rgba(245,247,252,.65);

        filter:
            none;
    }
}


/* =========================================================
   SAFE AREA — IPHONE / NOTCH / HOME INDICATOR
========================================================= */

@supports (padding: max(0px)) {

    .login-stage {
        padding-left:
            max(8px, env(safe-area-inset-left));

        padding-right:
            max(8px, env(safe-area-inset-right));
    }

    .topbar {
        padding-left:
            max(12px, env(safe-area-inset-left));

        padding-right:
            max(12px, env(safe-area-inset-right));
    }

    .footer {
        bottom:
            max(12px, env(safe-area-inset-bottom));
    }
}
/* =========================================================
   LOGIN REQUIRED MODAL
   ========================================================= */

.login-required-overlay {
    position: fixed;
    inset: 0;
    z-index: 99999;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 24px;

    background:
        radial-gradient(
            circle at 50% 45%,
            rgba(247, 185, 40, 0.10),
            transparent 35%
        ),
        rgba(2, 5, 10, 0.78);

    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity .35s ease,
        visibility .35s ease;
}

.login-required-overlay.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}


/* =========================================================
   MODAL
========================================================= */

.login-required-modal {
    position: relative;

    width: min(500px, 100%);

    padding: 42px 42px 34px;

    border: 1px solid rgba(255, 207, 75, .42);
    border-radius: 28px;

    background:
        linear-gradient(
            145deg,
            rgba(20, 24, 32, .92),
            rgba(5, 8, 14, .94)
        );

    box-shadow:
        0 35px 100px rgba(0, 0, 0, .75),
        0 0 60px rgba(247, 185, 40, .10),
        inset 0 1px 0 rgba(255,255,255,.10);

    overflow: hidden;

    transform:
        translateY(30px)
        scale(.94);

    transition:
        transform .4s cubic-bezier(.22,1,.36,1);
}

.login-required-overlay.is-open .login-required-modal {
    transform:
        translateY(0)
        scale(1);
}


/* =========================================================
   GOLD GLOW
========================================================= */

.login-modal-glow {
    position: absolute;

    width: 280px;
    height: 280px;

    top: -150px;
    left: 50%;

    transform: translateX(-50%);

    background: #f7b928;

    opacity: .13;

    filter: blur(75px);

    pointer-events: none;
}


/* =========================================================
   CLOSE
========================================================= */

.login-modal-close {
    position: absolute;

    top: 16px;
    right: 17px;

    width: 38px;
    height: 38px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(255,255,255,.10);
    border-radius: 50%;

    background: rgba(255,255,255,.04);

    color: rgba(255,255,255,.70);

    font-size: 25px;
    line-height: 1;

    cursor: pointer;

    transition:
        .25s ease;
}

.login-modal-close:hover {
    color: #fff;

    border-color: rgba(247,185,40,.55);

    background: rgba(247,185,40,.12);

    box-shadow:
        0 0 20px rgba(247,185,40,.16);

    transform: rotate(90deg);
}


/* =========================================================
   ICON
========================================================= */

.login-modal-icon {
    position: relative;

    width: 82px;
    height: 82px;

    margin: 0 auto 24px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(255,203,65,.45);
    border-radius: 24px;

    background:
        linear-gradient(
            145deg,
            rgba(255,203,65,.18),
            rgba(247,185,40,.04)
        );

    box-shadow:
        0 0 35px rgba(247,185,40,.15),
        inset 0 1px 0 rgba(255,255,255,.14);
}

.login-modal-icon::before {
    content: "";

    position: absolute;
    inset: 7px;

    border-radius: 18px;

    border: 1px solid rgba(255,255,255,.07);
}

.login-modal-crown {
    position: relative;
    z-index: 2;

    color: #ffd45c;

    font-size: 38px;

    text-shadow:
        0 0 10px rgba(255,210,80,.55),
        0 0 30px rgba(247,185,40,.30);
}


/* =========================================================
   CONTENT
========================================================= */

.login-modal-content {
    position: relative;
    z-index: 2;

    text-align: center;
}

.login-modal-eyebrow {
    display: inline-block;

    margin-bottom: 10px;

    color: #f7b928;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 3px;
    text-transform: uppercase;
}

.login-modal-content h2 {
    margin: 0;

    color: #fff;

    font-size: clamp(28px, 4vw, 36px);
    line-height: 1.12;
    font-weight: 800;

    letter-spacing: -.8px;
}

.login-modal-content h2 span {
    color: #f7b928;

    text-shadow:
        0 0 25px rgba(247,185,40,.22);
}

.login-modal-content p {
    max-width: 390px;

    margin: 17px auto 27px;

    color: rgba(235,240,248,.68);

    font-size: 14px;
    line-height: 1.7;
}


/* =========================================================
   BUTTONS
========================================================= */

.login-modal-buttons {
    display: flex;
    flex-direction: column;

    gap: 11px;
}

.login-modal-primary,
.login-modal-secondary {
    min-height: 54px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 15px;

    text-decoration: none;

    font-size: 14px;
    font-weight: 750;

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease,
        background .25s ease;
}


/* CONECTEAZĂ-TE */

.login-modal-primary {
    gap: 10px;

    color: #111;

    background:
        linear-gradient(
            135deg,
            #ffe38a 0%,
            #ffc52f 45%,
            #e99a13 100%
        );

    border: 1px solid rgba(255,225,130,.75);

    box-shadow:
        0 10px 35px rgba(247,185,40,.18),
        inset 0 1px 0 rgba(255,255,255,.55);
}

.login-modal-primary span {
    font-size: 17px;
}

.login-modal-primary b {
    margin-left: auto;
    margin-right: 18px;

    font-size: 20px;

    transition: transform .25s ease;
}

.login-modal-primary:hover {
    transform: translateY(-2px);

    box-shadow:
        0 15px 45px rgba(247,185,40,.30),
        0 0 25px rgba(247,185,40,.15),
        inset 0 1px 0 rgba(255,255,255,.65);
}

.login-modal-primary:hover b {
    transform: translateX(5px);
}


/* CREEAZĂ CONT */

.login-modal-secondary {
    color: #f5f7fb;

    border: 1px solid rgba(255,255,255,.12);

    background:
        rgba(255,255,255,.045);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.06);
}

.login-modal-secondary:hover {
    transform: translateY(-2px);

    border-color: rgba(247,185,40,.38);

    background:
        rgba(247,185,40,.08);

    color: #ffd45c;
}


/* =========================================================
   POATE MAI TÂRZIU
========================================================= */

.login-modal-later {
    display: block;

    margin: 18px auto 0;

    padding: 5px 12px;

    border: 0;

    background: transparent;

    color: rgba(255,255,255,.42);

    font-size: 12px;

    cursor: pointer;

    transition:
        color .2s ease;
}

.login-modal-later:hover {
    color: rgba(255,255,255,.80);
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

    .login-required-overlay {
        padding: 16px;
    }

    .login-required-modal {
        padding: 38px 22px 27px;

        border-radius: 23px;
    }

    .login-modal-icon {
        width: 70px;
        height: 70px;

        margin-bottom: 20px;
    }

    .login-modal-crown {
        font-size: 32px;
    }

    .login-modal-content h2 {
        font-size: 27px;
    }

    .login-modal-content p {
        font-size: 13px;
        line-height: 1.65;
    }

    .login-modal-primary,
    .login-modal-secondary {
        min-height: 51px;
    }

    .login-modal-close {
        width: 34px;
        height: 34px;

        top: 12px;
        right: 12px;
    }
}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    .login-required-overlay,
    .login-required-modal,
    .login-modal-primary,
    .login-modal-secondary,
    .login-modal-close {
        transition: none !important;
    }
}
/* =========================================================
   LOGO MODAL EXPLOREAZĂ
========================================================= */

/* =========================================================
   LOGO MODAL - FĂRĂ PĂTRAT
========================================================= */

.login-modal-icon {
    width: auto !important;
    height: auto !important;

    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;

    display: flex;
    align-items: center;
    justify-content: center;

    margin: 0 auto 20px;
}

.login-modal-icon::before,
.login-modal-icon::after {
    display: none !important;
}

.login-modal-logo {
    width: 150px !important;
    height: auto !important;

    max-width: 70%;
    object-fit: contain;

    display: block;

    filter:
        drop-shadow(0 0 12px rgba(247,185,40,.55))
        drop-shadow(0 0 28px rgba(247,185,40,.25));
}

@keyframes modalLogoIn {
    from {
        opacity: 0;
        transform: scale(.65) rotate(-8deg);
    }

    to {
        opacity: 1;
        transform: scale(1) rotate(0);
    }
}

.login-required-modal:hover .login-modal-logo {
    transform: scale(1.06);

    filter:
        drop-shadow(0 0 12px rgba(247,185,40,.65))
        drop-shadow(0 0 30px rgba(247,185,40,.25));
}
/* =========================================================
   LOGIN - 2FA
========================================================= */

.twofa-login-panel {
    width: 100%;
    text-align: center;
}

.twofa-login-icon {
    width: 58px;
    height: 58px;

    margin: 0 auto 16px;

    display: grid;
    place-items: center;

    border-radius: 16px;

    border: 1px solid rgba(214,163,58,.30);

    background: rgba(214,163,58,.07);

    font-size: 23px;

    box-shadow:
        0 0 30px rgba(214,163,58,.08);
}

.twofa-login-title {
    color: #fff;

    font-size: 20px;
    font-weight: 800;
}

.twofa-login-text {
    max-width: 360px;

    margin: 8px auto 20px;

    color: #858d98;

    font-size: 10px;
    line-height: 1.6;
}

.twofa-login-form {
    width: 100%;
}

.twofa-login-code {
    width: 100%;
    height: 54px;

    box-sizing: border-box;

    border: 1px solid rgba(214,163,58,.30);
    border-radius: 11px;

    outline: none;

    background: rgba(0,0,0,.20);

    color: #fff;

    text-align: center;

    font-size: 22px;
    font-weight: 800;

    letter-spacing: 9px;

    padding-left: 9px;

    transition:
        border-color .2s ease,
        box-shadow .2s ease;
}

.twofa-login-code:focus {
    border-color: rgba(214,163,58,.65);

    box-shadow:
        0 0 0 3px rgba(214,163,58,.07);
}

.twofa-back-login {
    display: inline-block;

    margin-top: 18px;

    color: #737c88;

    font-size: 9px;

    text-decoration: none;
}

.twofa-back-login:hover {
    color: #d6a33a;
}

@media (max-width: 600px) {

    .twofa-login-title {
        font-size: 17px;
    }

    .twofa-login-text {
        font-size: 9px;
    }

    .twofa-login-code {
        height: 50px;
        font-size: 19px;
        letter-spacing: 7px;
    }

}