/* ─── BOTÃO NAV ─────────────────────────────────────────────── */
.auth-nav-btn {
    display: flex;
    align-items: center;
    gap: .4rem;
    border: 1.5px solid rgba(255, 255, 255, 0.2);
    color: rgba(103, 100, 100, 0.85);
    background-color: rgb(255, 255, 255);
    font-family: 'DM Sans', sans-serif;
    font-size: .8rem;
    font-weight: 600;
    padding: .38rem .9rem;
    border-radius: 20px;
    cursor: pointer;
    transition: all .2s;
    white-space: nowrap;
}

.auth-nav-btn:hover {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.35);
}

.auth-nav-btn.logged {
    border-color: #c9a961;
    color: #c9a961;
    background: rgba(201, 169, 97, 0.08);
}

/* ─── FOCUS VISIBLE ─────────────────────────────────────────── */
.auth-nav-btn:focus-visible,
.auth-close:focus-visible,
.auth-submit:focus-visible,
.auth-pwd-toggle:focus-visible,
.auth-link-button:focus-visible {
    outline: 2px solid #c9a961;
    outline-offset: 2px;
}

/* ─── OVERLAY ───────────────────────────────────────────────── */
.auth-overlay {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 500;
    background: rgba(0, 0, 0, 0.82);
    backdrop-filter: blur(10px);
    align-items: center;
    justify-content: center;
    padding: 1rem;
    opacity: 0;
    transition: opacity .3s;
    scroll-behavior: auto;
}

.auth-overlay.open {
    display: flex;
}

.auth-overlay.visible {
    opacity: 1;
}

/* ─── CAIXA MODAL ───────────────────────────────────────────── */
.auth-box {
    background: #0d0b08;
    border: 1px solid #2e2410;
    scrollbar-width: none;
    border-radius: 20px;
    box-shadow:
        0 32px 80px rgba(0, 0, 0, 0.7),
        0 0 0 1px rgba(201, 169, 97, 0.06);
    width: 10%;
    max-width: 300px;
    overflow: auto;
    max-height: 95vh;
    transform: scale(.95) translateY(14px);
    transition: transform .3s cubic-bezier(.4, 0, .2, 1);
    position: relative;
}
/* HEADER LOJA LOGIN */

.auth-box::-webkit-scrollbar {
    display: none;
}

.auth-overlay.visible .auth-box {
    transform: scale(1) translateY(0);
}

/* ─── HEADER ────────────────────────────────────────────────── */
.auth-header {
    background: linear-gradient(160deg, #1a1208 0%, #2a1e0a 50%, #1a1208 100%);
    padding: 2.2rem 2rem 2rem;
    text-align: center;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    position: relative;
}

.auth-header::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.15), transparent);
}

/* Ícone coroa no header */
.auth-header-coin {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    border: 1.5px solid rgba(255, 255, 255, 0.18);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.1rem;
    background: rgba(255, 255, 255, 0.04);
    font-size: 1.6rem;
    line-height: 1;
}

.auth-header h3 {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.75rem;
    font-weight: 700;
    color: #ffffff;
    letter-spacing: .03em;
}

.auth-header h3 em {
    color: #c9a961;
    font-style: italic;
}

.auth-header p {
    font-size: .75rem;
    color: rgba(255, 255, 255, 0.35);
    letter-spacing: .1em;
    text-transform: uppercase;
    font-weight: 600;
    margin: 0;
    font-family: 'DM Sans', sans-serif;
}

/* ─── BOTÃO FECHAR ──────────────────────────────────────────── */
.auth-close {
    position: absolute;
    top: 1rem;
    right: 1rem;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: rgba(255, 255, 255, 0.4);
    width: 30px;
    height: 30px;
    border-radius: 50%;
    font-size: .85rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all .2s;
}

.auth-close:hover {
    background: rgba(255, 255, 255, 0.12);
    color: #ffffff;
    transform: rotate(90deg);
}

/* ─── TABS ──────────────────────────────────────────────────── */
.auth-tabs {
    display: flex;
    border-bottom: 1px solid #1e1a10;
    background: #0a0805;
}

.auth-tab {
    flex: 1;
    padding: .9rem;
    background: none;
    border: none;
    border-bottom: 2px solid transparent;
    font-family: 'DM Sans', sans-serif;
    font-size: .78rem;
    font-weight: 700;
    color: #3a2e18;
    cursor: pointer;
    transition: all .2s;
    margin-bottom: -1px;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.auth-tab:hover {
    color: rgba(255, 255, 255, 0.5);
}

.auth-tab.active {
    color: #ffffff;
    border-bottom-color: #c9a961;
    background: #0f0d0a72;
}

/* ─── BODY ──────────────────────────────────────────────────── */
.auth-body {
    padding: 1.8rem 2rem 2rem;
    background: #ffffff;
}

.auth-panel {
    display: none;
}

.auth-panel.active {
    display: block;
}

/* ─── CAMPOS ────────────────────────────────────────────────── */
.auth-field {
    margin-bottom: 1rem;
}

.auth-field label {
    display: block;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: rgba(31, 28, 28, 0.911);
    margin-bottom: .45rem;
    font-family: 'DM Sans', sans-serif;
}

.auth-field input {
    width: 100%;
    padding: .8rem .95rem;
    border: 1px solid rgba(23, 22, 22, 0.915);
    border-radius: 10px;
    font-family: 'DM Sans', sans-serif;
    font-size: .9rem;
    font-weight: 500;
    color: #000000;
    /* background: #161210; */
    outline: none;
    transition: border-color .2s, box-shadow .2s;
    box-sizing: border-box;
}

.auth-field input::placeholder {
    color: rgb(34, 32, 32);
    font-weight: 400;
}

.auth-field input:focus {
    box-shadow: 0 0 0 3px rgba(201, 169, 97, 0.1);
    /* background: #1a1610; */
        border: 2px solid rgba(23, 22, 22, 0.915);
}

.auth-field input.error {
    border-color: #a03030;
    box-shadow: 0 0 0 3px rgba(160, 48, 48, 0.1);
}

/* ─── LINHA DUPLA (nome/sobrenome) ──────────────────────────── */
.auth-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .65rem;
}

/* ─── CAMPO DE SENHA ────────────────────────────────────────── */
.auth-pwd-wrap {
    position: relative;
}

.auth-pwd-wrap input {
    padding-right: 2.8rem;
}

.auth-pwd-toggle {
    position: absolute;
    right: .75rem;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    cursor: pointer;
    color: rgba(255, 255, 255, 0.25);
    font-size: 1rem;
    padding: .2rem;
    transition: color .2s;
    line-height: 1;
}

.auth-pwd-toggle:hover {
    color: #c9a961;
}

/* ─── MENSAGEM DE ERRO ──────────────────────────────────────── */
.auth-error-msg {
    font-size: .72rem;
    color: #c05050;
    margin-top: .3rem;
    display: none;
    font-family: 'DM Sans', sans-serif;
    font-weight: 500;
}

.auth-error-msg.show {
    display: block;
}

/* ─── CHECKBOX TERMOS ───────────────────────────────────────── */
.auth-check-wrap {
    display: flex;
    align-items: flex-start;
    gap: .6rem;
    margin-bottom: .85rem;
}

.auth-check-wrap input[type=checkbox] {
    width: 15px;
    height: 15px;
    margin-top: .15rem;
    accent-color: #c9a961;
    cursor: pointer;
    flex-shrink: 0;
}

.auth-check-wrap label {
    font-size: .75rem;
    color: rgba(255, 255, 255, 0.3);
    font-family: 'DM Sans', sans-serif;
    cursor: pointer;
    letter-spacing: 0;
    text-transform: none;
    font-weight: 500;
    line-height: 1.5;
}

.auth-check-wrap label a {
    color: #c9a961;
    text-decoration: underline;
}

/* ─── BOTÃO PRINCIPAL ───────────────────────────────────────── */
.auth-submit {
    width: 100%;
    padding: .95rem;
    background: linear-gradient(135deg, #8a6a20, #c9a961);
    color: #0a0805;
    border: none;
    border-radius: 10px;
    font-family: 'DM Sans', sans-serif;
    font-size: .88rem;
    font-weight: 800;
    cursor: pointer;
    transition: opacity .2s, transform .15s;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.auth-submit:hover {
    opacity: .88;
    transform: translateY(-1px);
}

.auth-submit:active {
    transform: translateY(0);
}

.auth-submit:disabled {
    opacity: .35;
    cursor: not-allowed;
    transform: none;
}

/* ─── BOTÃO SECUNDÁRIO ──────────────────────────────────────── */
.auth-secondary-button {
    background: rgba(0, 0, 0, 0.796) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    color: rgba(226, 220, 220, 0.87) !important;
    font-weight: 700 !important;
    letter-spacing: .06em !important;
}

.auth-secondary-button:hover {
    border-color: rgba(255, 255, 255, 0.18) !important;
    color: #ffffff !important;
    opacity: 1 !important;
    transform: none !important;
}

/* ─── DIVISOR ───────────────────────────────────────────────── */
.auth-divider {
    display: flex;
    align-items: center;
    gap: .75rem;
    margin: .85rem 0;
    color: rgba(255, 255, 255, 0.2);
    font-size: .72rem;
    font-family: 'DM Sans', sans-serif;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.auth-divider::before,
.auth-divider::after {
    content: '';
    flex: 1;
    height: 1px;
    background: rgba(255, 255, 255, 0.06);
}

/* ─── ESQUECI SENHA ─────────────────────────────────────────── */
.auth-forgot {
    text-align: right;
    margin-top: -.4rem;
    margin-bottom: 1.4rem;
}

.auth-link-button {
    appearance: none;
    background: none;
    border: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    padding-bottom: 1px;
    font-size: .75rem;
    color:#987c06e6;
    font-family: 'DM Sans', sans-serif;
    font-weight: 500;
    cursor: pointer;
    letter-spacing: .03em;
    transition: color .2s, border-color .2s;
}

.auth-link-button:hover {
    color: #c9a961;
    border-bottom-color: #c9a961;
}

/* ─── FORÇA DA SENHA ────────────────────────────────────────── */
.auth-strength {
    margin-top: .4rem;
}

.auth-strength-bar {
    height: 3px;
    border-radius: 2px;
    background: rgba(255, 255, 255, 0.06);
    overflow: hidden;
    margin-bottom: .25rem;
}

.auth-strength-fill {
    height: 100%;
    border-radius: 2px;
    width: 0;
    transition: width .3s, background .3s;
    background: rgba(255, 255, 255, 0.06);
}

.auth-strength-fill[data-level="fraca"] {
    width: 25%;
    background: #a03030;
}

.auth-strength-fill[data-level="média"] {
    width: 55%;
    background: #c07820;
}

.auth-strength-fill[data-level="boa"] {
    width: 75%;
    background: #c9a961;
}

.auth-strength-fill[data-level="forte"] {
    width: 100%;
    background: #4a9a6a;
}

.auth-strength-label {
    font-size: .7rem;
    color: rgba(255, 255, 255, 0.25);
    font-family: 'DM Sans', sans-serif;
    font-weight: 500;
}

/* ─── SUCESSO ───────────────────────────────────────────────── */
.auth-success {
    display: none;
    text-align: center;
    padding: 1.5rem 0 .5rem;
}

.auth-success-icon {
    font-size: 2.8rem;
    margin-bottom: .75rem;
}

.auth-success h4 {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: #ffffff;
    margin-bottom: .4rem;
}

.auth-success p {
    font-size: .82rem;
    color: rgba(255, 255, 255, 0.35);
    font-family: 'DM Sans', sans-serif;
    font-weight: 500;
    line-height: 1.6;
}

.auth-success-actions {
    display: flex;
    flex-direction: column;
    gap: .6rem;
    margin-top: 1rem;
}

.auth-logout-button {
    width: 100%;
}

/* ─── LOGOUT NAV ────────────────────────────────────────────── */
.auth-logout-nav {
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: transparent;
    color: rgba(255, 100, 100, 0.7);
    padding: .4rem .9rem;
    border-radius: 999px;
    margin-left: .75rem;
    font-size: .8rem;
    font-weight: 600;
    cursor: pointer;
    transition: all .2s;
}

.auth-logout-nav:hover {
    border-color: #a05050;
    background: rgba(160, 80, 80, 0.1);
    color: #ff8080;
}

.auth-logout-nav.hidden,
.auth-logout-nav[hidden] {
    display: none !important;
}

/* ─── RESUMO DA CONTA (logado) ──────────────────────────────── */
.auth-account-summary {
    display: grid;
    gap: .75rem;
    margin-top: .85rem;
    padding: .85rem;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.06);
    text-align: left;
}

.auth-account-summary strong {
    color: #ffffff;
    font-size: .9rem;
    font-weight: 700;
}

.auth-account-summary small {
    color: rgba(255, 255, 255, 0.3);
    line-height: 1.6;
    font-size: .78rem;
    white-space: pre-line;
    font-weight: 500;
}

.auth-terms-error {
    margin-top: -.5rem;
    margin-bottom: .75rem;
}

/* ─── RESPONSIVIDADE (não alterar) ─────────────────────────── */
@media (max-width: 480px) {
    .auth-box {
        border-radius: 14px;
        max-height: 100vh;
    }

    .auth-body {
        padding: 1.2rem 1.2rem 1.4rem;
    }

    .auth-row {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .auth-header {
        padding: 1.5rem 1.2rem 1.2rem;
    }
}
 .auth-nav-btn:hover {
     background: rgba(201, 169, 97, 0.1);
     border-color: #fffdf8;
 }

 .auth-nav-btn.logged {
     border-color: #ffffff;
     color:rgba(0, 0, 0, 0.716);
     background: rgb(255, 255, 255);
 }

 /* FOCUS VISIBLE */
 .auth-nav-btn:focus-visible,
 .auth-close:focus-visible,
 .auth-submit:focus-visible,
 .auth-pwd-toggle:focus-visible,
 .auth-link-button:focus-visible {
     outline: 2px solid #c9a961;
     outline-offset: 2px;
 }

 /* OVERLAY */
 .auth-overlay {
     display: none;
     position: fixed;
     inset: 0;
     z-index: 500;
     background: rgba(0, 0, 0, 0.75);
     backdrop-filter: blur(8px);
     align-items: center;
     justify-content: center;
     padding: 1rem;
     opacity: 0;
     transition: opacity 0.3s;
     scroll-behavior: auto;
 }

 .auth-overlay.open {
     display: flex;
 }

 .auth-overlay.visible {
     opacity: 1;
 }

 /* CAIXA */
 .auth-box {
     background: #0f0d0a;
     border: 1px solid #2a2010;
     scrollbar-width: none;
     border-radius: 18px;
     box-shadow: 0 32px 80px rgba(0, 0, 0, 0.6), 0 0 0 1px rgba(201, 169, 97, 0.08);
     width: 80% !important;
     max-width: 480px !important;
     overflow: auto;
     max-height: 95vh;
     transform: scale(0.95) translateY(14px);
     transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
     position: relative;
 }

 .auth-box::-webkit-scrollbar {
     display: none;
 }

 .auth-overlay.visible .auth-box {
     transform: scale(1) translateY(0);
 }

 /* HEADER */
 .auth-header {
     background: linear-gradient(160deg, #120f08 0%, #1e1608 60%, #2a1e08 100%);
     padding: 2rem 1.5rem 1.5rem;
     text-align: center;
     position: relative;
     border-bottom: 1px solid #2a2010;
 }

 .auth-header::after {
     content: '';
     position: absolute;
     bottom: 0;
     left: 50%;
     transform: translateX(-50%);
     width: 60px;
     height: 1px;
     background: linear-gradient(90deg, transparent, #ffffff, transparent);
 }

 .auth-header-coin {
     font-size: 2.4rem;
     display: block;
     margin-bottom: 0.75rem;
     filter: drop-shadow(0 4px 16px rgb(231, 229, 225));
 }

 .auth-header h3 {
     font-family: 'Cormorant Garamond', serif;
     font-size: 1.6rem;
     font-weight: 400;
     color: #f0e6d0;
     letter-spacing: 0.03em;
 }
.apresetacao span {
    color: #fffc4c;
    font-size: .9rem;
    letter-spacing: 0;
    flex-wrap: nowrap;
    text-transform: none;
    font-weight: 400;
}
.linha {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 15px;
    margin: 1rem 0;
    gap: 10px;
}

.linha .left,
.linha .right {
    flex: 1;
    height: 1px;
    background: rgba(225, 146, 10, 0.12);
}

.linha .meio {
    color: rgba(255, 255, 255, 0.35);
    font-family: 'DM Sans', sans-serif;
    font-size: 0.65rem;
    font-weight: 600;
    line-height: 1;
}
 .auth-header h3 em {
     color: #c9a961;
     font-style: italic;
 }


 /* FECHAR */
 .auth-close {
     position: absolute;
     top: 1rem;
     right: 1rem;
     background: rgba(255, 255, 255, 0.06);
     border: 1px solid rgba(255, 255, 255, 0.1);
     color: #8a7a5a;
     width: 30px;
     height: 30px;
     border-radius: 50%;
     font-size: 0.85rem;
     cursor: pointer;
     display: flex;
     align-items: center;
     justify-content: center;
     transition: all 0.2s;
 }

 .auth-close:hover {
     background: rgba(255, 255, 255, 0.12);
     color: #f0e6d0;
     transform: rotate(90deg);
 }

 /* TABS */
 .auth-tabs {
     display: flex;
     border-bottom: 1px solid #1e1a10;
     background: #0a0805;
 }

 .auth-tab {
     flex: 1;
     padding: 0.85rem;
     background: none;
     border: none;
     border-bottom: 2px solid transparent;
     font-family: 'DM Sans', sans-serif;
     font-size: 0.82rem;
     font-weight: 500;
     color: #5a4a2a;
     cursor: pointer;
     transition: all 0.2s;
     margin-bottom: -1px;
     letter-spacing: 0.04em;
 }

 .auth-tab:hover {
     color: #a08040;
 }

 .auth-tab.active {
     color: #c9a961;
     border-bottom-color: #c9a961;
     background: #0f0d0a;
 }

 /* BODY */
 .auth-body {
     padding: 1.4rem 1.6rem 1.8rem;
     background: #0f0d0a;
 }

 .auth-panel {
     display: none;
 }

 .auth-panel.active {
     display: block;
 }

 /* CAMPOS */
 .auth-field {
     margin-bottom: 0.85rem;
 }

 .auth-field label {
     display: block;
     font-size: 0.7rem;
     font-weight: 500;
     letter-spacing: 0.08em;
     text-transform: uppercase;
     color: #6a5a3a;
     margin-bottom: 5px;
     font-family: 'DM Sans', sans-serif;
 }

 .auth-field input {
     width: 100%;
     padding: 0.5rem 0.95rem;
     border: 1px solid #2a2010;
     border-radius: 8px;
     font-family: 'DM Sans', sans-serif;
     font-size: 0.88rem;
     color: #f0e6d0;
     background: #0a0805;
     outline: none;
     transition: border-color 0.2s, box-shadow 0.2s;
 }

 .auth-field input::placeholder {
     color: #3a2e18;
 }

 .auth-field input:focus {
     border-color: #c9a961;
     box-shadow: 0 0 0 3px rgba(201, 169, 97, 0.1);
     background: #0d0b08;
 }

 .auth-field input.error {
     border-color: #a03030;
     box-shadow: 0 0 0 3px rgba(160, 48, 48, 0.1);
 }

 /* LINHA DUPLA */
 .auth-row {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 0.65rem;
 }

 /* SENHA */
 .auth-pwd-wrap {
     position: relative;
 }

 .auth-pwd-wrap input {
     padding-right: 2.8rem;
 }

 .auth-pwd-toggle {
     position: absolute;
     right: 0.75rem;
     top: 50%;
     transform: translateY(-50%);
     background: none;
     border: none;
     cursor: pointer;
     color: #5a4a2a;
     font-size: 1rem;
     padding: 0.2rem;
     transition: color 0.2s;
     line-height: 1;
 }

 .auth-pwd-toggle:hover {
     color: #c9a961;
 }

 /* ERRO */
 .auth-error-msg {
     font-size: 0.72rem;
     color: #c05050;
     margin-top: 4px;
     display: none;
     font-family: 'DM Sans', sans-serif;
 }

 .auth-error-msg.show {
     display: block;
 }

 /* CHECKBOX TERMOS */
 .auth-check-wrap {
     display: flex;
     align-items: flex-start;
     gap: 0.6rem;
     margin-bottom: 0.85rem;
 }

 .auth-check-wrap input[type=checkbox] {
     width: 15px;
     height: 15px;
     margin-top: 0.15rem;
     accent-color: #c9a961;
     cursor: pointer;
     flex-shrink: 0;
 }

 .auth-check-wrap label {
     font-size: 0.75rem;
     color: #6a5a3a;
     font-family: 'DM Sans', sans-serif;
     cursor: pointer;
     letter-spacing: 0;
     text-transform: none;
     font-weight: 400;
     line-height: 1.5;
 }

 .auth-check-wrap label a {
     color: #c9a961;
     text-decoration: underline;
 }

 /* BOTÃO PRINCIPAL */
 .auth-submit {
     width: 100%;
     padding: 0.85rem;
     background: linear-gradient(135deg, #8a6a20, #c9a961);
     color: #0a0805;
     border: none;
     border-radius: 9px;
     font-family: 'DM Sans', sans-serif;
     font-size: 0.9rem;
     font-weight: 600;
     cursor: pointer;
     transition: opacity 0.2s, transform 0.15s;
     letter-spacing: 0.05em;
 }

 .auth-submit:hover {
     opacity: 0.9;
     transform: translateY(-1px);
 }

 .auth-submit:active {
     transform: translateY(0);
 }

 .auth-submit:disabled {
     opacity: 0.4;
     cursor: not-allowed;
     transform: none;
 }

 /* BOTÃO SECUNDÁRIO */
 .auth-secondary-button {
     background: transparent !important;
     border: 1px solid #2a2010 !important;
     color: #8a7a5a !important;
     font-weight: 500 !important;
 }

 .auth-secondary-button:hover {
     border-color: #5a4a2a !important;
     color: #c9a961 !important;
     opacity: 1 !important;
     transform: none !important;
 }

 /* DIVISOR */
 .auth-divider {
     display: flex;
     align-items: center;
     gap: 0.75rem;
     margin: 0.85rem 0;
     color: #3a2e18;
     font-size: 0.75rem;
     font-family: 'DM Sans', sans-serif;
 }

 .auth-divider::before,
 .auth-divider::after {
     content: '';
     flex: 1;
     height: 1px;
     background: #1e1a10;
 }

 /* ESQUECI SENHA */
 .auth-forgot {
     text-align: right;
     margin-top: -0.4rem;
     margin-bottom: 0.85rem;
 }

 .auth-link-button {
     appearance: none;
     background: none;
     border: 0;
     font-size: 0.75rem;
     color: #8a7a5a;
     font-family: 'DM Sans', sans-serif;
     cursor: pointer;
     text-decoration: underline;
     padding: 0;
     transition: color 0.2s;
 }

 .auth-link-button:hover {
     color: #c9a961;
 }

 /* FORÇA DA SENHA */
 .auth-strength {
     margin-top: 0.4rem;
 }

 .auth-strength-bar {
     height: 3px;
     border-radius: 2px;
     background: #1e1a10;
     overflow: hidden;
     margin-bottom: 4px;
 }

 .auth-strength-fill {
     height: 100%;
     border-radius: 2px;
     width: 0;
     transition: width 0.3s, background 0.3s;
     background: #1e1a10;
 }

 .auth-strength-fill[data-level="fraca"] {
     width: 25%;
     background: #a03030;
 }

 .auth-strength-fill[data-level="média"] {
     width: 55%;
     background: #c07820;
 }

 .auth-strength-fill[data-level="boa"] {
     width: 75%;
     background: #c9a961;
 }

 .auth-strength-fill[data-level="forte"] {
     width: 100%;
     background: #4a9a6a;
 }

 .auth-strength-label {
     font-size: 0.7rem;
     color: #5a4a2a;
     font-family: 'DM Sans', sans-serif;
 }

 /* SUCESSO */
 .auth-success {
     display: none;
     text-align: center;
     padding: 1.5rem 0 0.5rem;
 }

 .auth-success-icon {
     font-size: 2.8rem;
     margin-bottom: 0.75rem;
 }

 .auth-success h4 {
     font-family: 'Cormorant Garamond', serif;
     font-size: 1.4rem;
     color: #f0e6d0;
     margin-bottom: 0.4rem;
 }

 .auth-success p {
     font-size: 0.82rem;
     color: #6a5a3a;
     font-family: 'DM Sans', sans-serif;
     line-height: 1.6;
 }

 .auth-success-actions {
     display: flex;
     flex-direction: column;
     gap: 0.6rem;
     margin-top: 1rem;
 }

 .auth-logout-button {
     width: 100%;
 }


 .auth-logout-nav:hover {
     border-color: #a05050;
     background: rgba(160, 80, 80, 0.1);
 }

 .auth-logout-nav.hidden,
 .auth-logout-nav[hidden] {
     display: none !important;
 }


 .auth-account-summary strong {
     color: #f0e6d0;
     font-size: 0.9rem;
 }

 .auth-account-summary small {
     color: #9a9384;
     line-height: 1.6;
     font-size: 0.78rem;
     white-space: pre-line;
 }

 /* RESPONSIVO */
 @media (max-width: 480px) {
     .auth-box {
         border-radius: 14px;
         max-height: 100vh;
     }

     .auth-body {
         padding: 1.2rem 1.2rem 1.4rem;
     }

     .auth-row {
         grid-template-columns: 1fr;
         gap: 0;
     }

     .auth-header {
         padding: 1.5rem 1.2rem 1.2rem;
     }
 }

/* =========================================================
   RELIGIONJOÍAS — AUTH BOX PREMIUM
   SOMENTE ALTERAÇÕES VISUAIS — FUNCIONALIDADES PRESERVADAS
   ========================================================= */

.auth-overlay {
    background:
        radial-gradient(circle at center,
            rgba(201, 169, 97, 0.10) 0%,
            rgba(0, 0, 0, 0.78) 48%,
            rgba(0, 0, 0, 0.94) 100%);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.auth-box {
    background:
        radial-gradient(ellipse at top,
            rgba(201, 169, 97, 0.035),
            transparent 45%),
        linear-gradient(145deg, #090909 0%, #050505 52%, #020202 100%);
    border: 1px solid rgba(201, 169, 97, 0.30);
    border-radius: 24px;
    box-shadow:
        0 0 0 1px rgba(255, 255, 255, 0.015) inset,
        0 32px 90px rgba(0, 0, 0, 0.82),
        0 0 45px rgba(201, 169, 97, 0.08);
    max-width: 800px;
}

.auth-box::before {
    content: '';
    position: absolute;
    top: 0;
    left: 12%;
    right: 12%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(218, 174, 75, 0.65), transparent);
}

.auth-header {
    background:
        radial-gradient(ellipse at top, rgba(201, 169, 97, 0.035), transparent 55%),
        #050505;
    padding: 2.3rem 3rem 2rem;
    border-bottom: 1px solid rgba(201, 169, 97, 0.14);
}

.auth-header::after {
    width: 260px;
    background: linear-gradient(90deg, transparent, rgba(201, 169, 97, 0.60), transparent);
}

.auth-header-coin {
    width: 86px;
    height: 86px;
    border: 1px solid rgba(201, 169, 97, 0.55);
    background: rgba(201, 169, 97, 0.025);
    color: #d9aa42;
    box-shadow: 0 0 22px rgba(201, 169, 97, 0.08);
}

.auth-header h3 {
    color: #f2f0eb;
    font-size: clamp(1.9rem, 4vw, 2.5rem);
    font-weight: 500;
    letter-spacing: 0;
    margin: 0 0 .45rem;
}

.auth-header h3 em {
    color: #d9aa42;
    text-shadow: 0 0 14px rgba(218, 169, 67, 0.15);
}

.auth-header p {
    color: #aaa6a0;
    font-size: .9rem;
    letter-spacing: 0;
    text-transform: none;
    font-weight: 400;
}

.auth-close {
    top: 1.3rem;
    right: 1.4rem;
    width: 54px;
    height: 54px;
    background: rgba(0, 0, 0, 0.30);
    border: 1px solid rgba(201, 169, 97, 0.55);
    color: #d9aa42;
    font-size: 1.25rem;
}

.auth-close:hover {
    background: rgba(201, 169, 97, 0.10);
    border-color: #d9aa42;
    color: #f1c55c;
}

.auth-tabs {
    margin: 0 2rem;
    border: 1px solid rgba(201, 169, 97, 0.20);
    border-radius: 13px 13px 0 0;
    background: rgba(255, 255, 255, 0.008);
    overflow: hidden;
}

.auth-tab {
    min-height: 72px;
    padding: .9rem 1rem;
    color: #817d75;
    font-size: .9rem;
    font-weight: 700;
    letter-spacing: .05em;
}

.auth-tab:hover {
    color: #d9aa42;
    background: rgba(212, 164, 61, 0.035);
}

.auth-tab.active {
    color: #e2b34e;
    border-bottom-color: #d8a93f;
    background: linear-gradient(180deg, rgba(210, 163, 62, 0.055), rgba(210, 163, 62, 0.015));
    box-shadow: 0 4px 16px rgba(216, 169, 63, 0.08);
}

.auth-body {
    padding: 2rem 3rem 2.5rem;
    background: #050505;
}

.auth-field {
    margin-bottom: 1.25rem;
}

.auth-field label {
    color: #d7d1c6;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .06em;
    margin-bottom: .55rem;
}

.auth-field input {
    width: 100%;
    min-height: 50px;
    padding: 2px 1rem !important;
    border: 1px solid rgba(201, 169, 97, 0.38);
    border-radius: 11px;
    color: #f3eee4;
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.018));
    box-sizing: border-box;
}

.auth-field input::placeholder {
    color: #77736d;
}

.auth-field input:hover {
    border-color: rgba(211, 165, 63, 0.55);
}

.auth-field input:focus {
    border: 1px solid #d5a73f;
    box-shadow: 0 0 0 3px rgba(213, 167, 63, 0.08), 0 0 18px rgba(213, 167, 63, 0.07);
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.025));
}

.auth-pwd-toggle {
    color: #d6aa48;
}

.auth-pwd-toggle:hover {
    color: #f1c55c;
}

.auth-forgot {
    margin-top: -.4rem;
    margin-bottom: 1.5rem;
}

.auth-link-button {
    color: #e0ad43;
    border-bottom-color: rgba(224, 173, 67, 0.35);
}

.auth-link-button:hover {
    color: #f2c866;
    border-bottom-color: #f2c866;
}

.auth-submit {
    min-height: 60px;
    padding: .95rem;
    border: 1px solid #e1b84f;
    border-radius: 11px;
    background: linear-gradient(105deg, #c79532 0%, #e0b449 45%, #f3cd70 100%);
    color: #080808;
    font-size: .95rem;
    font-weight: 800;
    letter-spacing: .07em;
    box-shadow: 0 7px 25px rgba(210, 162, 55, 0.15);
}
.logo-religionjoias {
    display: flex;
    align-items: center;
    justify-content: center;

}
.apresetacao h2 {
    color:white;
    font-size:.7rem;
}
.auth-submit:hover {
    opacity: 1;
    transform: translateY(-1px);
    box-shadow: 0 10px 30px rgba(210, 162, 55, 0.25);
}

.auth-divider {
    gap: .9rem;
    margin: 1.35rem 0;
    color: #8d887f;
}

.auth-divider::before,
.auth-divider::after {
    background: linear-gradient(90deg, transparent, rgba(196, 150, 56, 0.45));
}

.auth-divider::after {
    background: linear-gradient(90deg, rgba(196, 150, 56, 0.45), transparent);
}

.auth-secondary-button {
    min-height: 58px;
    background: transparent !important;
    border: 1px solid rgba(196, 150, 56, 0.42) !important;
    border-radius: 11px;
    color: #ddd6c8 !important;
}

.auth-secondary-button:hover {
    background: rgba(209, 163, 62, 0.055) !important;
    border-color: #d5a73f !important;
    color: #e7b957 !important;
    box-shadow: 0 0 20px rgba(209, 163, 62, 0.07);
}

.auth-check-wrap label {
    color: #9e998f;
}

.auth-check-wrap label a {
    color: #d8a942;
}

.auth-strength-bar {
    background: rgba(255, 255, 255, 0.08);
}

.auth-strength-label {
    color: #817d75;
}

.auth-success {
    border: 1px solid rgba(205, 161, 61, 0.35);
    border-radius: 12px;
    background: rgba(205, 161, 61, 0.045);
    padding: 1.5rem;
}

.auth-success h4 {
    color: #e0b34e;
}

.auth-success p {
    color: #aaa59b;
}

@media (max-width: 600px) {
    .auth-box {
        width: 94vw;
        max-width: 94vw;
        border-radius: 18px;
    }

    .auth-header {
        padding: 1.8rem 1.3rem 1.5rem;
    }

    .auth-header-coin {
        width: 70px;
        height: 70px;
    }

    .auth-close {
        top: .85rem;
        right: .85rem;
        width: 44px;
        height: 44px;
    }

    .auth-tabs {
        margin: 0 1rem;
    }

    .auth-tab {
        min-height: 62px;
        font-size: .76rem;
    }

    .auth-body {
        padding: 1.5rem 1.3rem 2rem;
    }
}
