.LgWrap {
    padding: 60px 0 80px 0;
    min-height: calc(100vh - 220px);
    display: flex;
    align-items: center;
}

.LgCard {
    background: #141414;
    border: 1px solid rgba(250, 204, 20, 0.25);
    border-radius: 16px;
    padding: 40px 36px 36px 36px;
    width: 100%;
    max-width: 440px;
    margin: 0 auto;
    box-shadow: 0 8px 40px rgba(0, 0, 0, 0.45);
}

.LgCard_Logo {
    text-align: center;
    margin-bottom: 28px;
}

.LgCard_Logo img {
    height: 52px;
}

.LgCard_Titulo {
    font-family: 'hinted-Dobra-Bold', sans-serif;
    font-size: 22px;
    color: #fff;
    text-align: center;
    margin-bottom: 6px;
}

.LgCard_Sub {
    font-family: 'hinted-Dobra-Book', sans-serif;
    font-size: 13px;
    color: #888;
    text-align: center;
    margin-bottom: 28px;
}

/* ---- Toggle Empresa / Candidato ---- */

.LgTipo {
    display: flex;
    gap: 0;
    background: #0a0a0a;
    border: 1px solid rgba(250, 204, 20, 0.2);
    border-radius: 10px;
    padding: 4px;
    margin-bottom: 26px;
}

.LgTipo_Btn {
    flex: 1;
    padding: 9px 12px;
    border: none;
    background: transparent;
    border-radius: 7px;
    font-family: 'hinted-Dobra-Medium', sans-serif;
    font-size: 13px;
    color: #888;
    cursor: pointer;
    transition: all 0.2s;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
}

.LgTipo_Btn svg,
.LgTipo_Btn i {
    width: 16px;
    height: 16px;
    stroke: currentColor;
    flex-shrink: 0;
}

.LgTipo_Btn.ativo {
    background: rgba(250, 204, 20, 1);
    color: #000;
    font-family: 'hinted-Dobra-Bold', sans-serif;
    animation: lgBtnPop 0.28s ease-out;
}

.LgTipo_Btn:hover:not(.ativo) {
    color: #ccc;
}

@keyframes lgBtnPop {
    0%   { transform: scale(1); }
    45%  { transform: scale(1.07); }
    100% { transform: scale(1); }
}

@keyframes lgCardFlash {
    0%   { box-shadow: 0 0 0 0px rgba(250, 204, 20, 0); }
    35%  { box-shadow: 0 0 0 6px rgba(250, 204, 20, 0.35); }
    100% { box-shadow: 0 0 0 0px rgba(250, 204, 20, 0); }
}

.LgCard.tipo-flash {
    animation: lgCardFlash 0.45s ease-out;
}

/* ---- Campos compartilhados: ver css.css (LgLabel, LgInput, LgInputWrap, LgOlho, CdGrid2, CdSelect) ---- */

/* ---- Botao Entrar ---- */

.LgBtnEntrar {
    width: 100%;
    padding: 13px;
    background: rgba(250, 204, 20, 1);
    color: #000;
    font-family: 'hinted-Dobra-Bold', sans-serif;
    font-size: 15px;
    border: none;
    border-radius: 9px;
    cursor: pointer;
    transition: background 0.2s, opacity 0.2s;
    margin-top: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.LgBtnEntrar:hover {
    background: rgba(250, 204, 20, 0.88);
}

.LgBtnEntrar:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

.LgBtnEntrar svg {
    width: 17px;
    height: 17px;
    stroke: currentColor;
}

/* ---- Divisor ---- */

.LgDivisor {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 24px 0 20px 0;
}

.LgDivisor_Linha {
    flex: 1;
    height: 1px;
    background: rgba(255, 255, 255, 0.08);
}

.LgDivisor_Txt {
    font-family: 'hinted-Dobra-Book', sans-serif;
    font-size: 11px;
    color: #555;
}

/* ---- Cadastre-se ---- */

.LgCadastro {
    text-align: center;
    font-family: 'hinted-Dobra-Book', sans-serif;
    font-size: 13px;
    color: #777;
}

.LgCadastro a {
    color: rgba(250, 204, 20, 1);
    text-decoration: none;
    font-family: 'hinted-Dobra-Bold', sans-serif;
    transition: opacity 0.2s;
}

.LgCadastro a:hover {
    opacity: 0.8;
}

/* ---- Loading spinner no botao ---- */

.LgSpinner {
    width: 17px;
    height: 17px;
    border: 2px solid rgba(0, 0, 0, 0.3);
    border-top-color: #000;
    border-radius: 50%;
    animation: LgSpin 0.7s linear infinite;
    display: none;
}

@keyframes LgSpin {
    to {
        transform: rotate(360deg);
    }
}

.LgBtnEntrar.carregando .LgBtnEntrar_Txt {
    display: none;
}

.LgBtnEntrar.carregando .LgBtnEntrar_Icon {
    display: none;
}

.LgBtnEntrar.carregando .LgSpinner {
    display: block;
}

/* ---- Manter Logado ---- */

.LgLembrar {
    margin-top: 16px;
}

.LgLembrar_Label {
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    font-family: 'hinted-Dobra-Book', sans-serif;
    font-size: 13px;
    color: #888;
    user-select: none;
}

.LgLembrar_Label input[type="checkbox"] {
    display: none;
}

.LgLembrar_Check {
    width: 18px;
    height: 18px;
    min-width: 18px;
    border: 1.5px solid rgba(250, 204, 20, 0.35);
    border-radius: 5px;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s;
    position: relative;
}

.LgLembrar_Label input[type="checkbox"]:checked + .LgLembrar_Check {
    background: rgba(250, 204, 20, 1);
    border-color: rgba(250, 204, 20, 1);
}

.LgLembrar_Label input[type="checkbox"]:checked + .LgLembrar_Check::after {
    content: '';
    width: 5px;
    height: 9px;
    border: 2px solid #000;
    border-top: none;
    border-left: none;
    transform: rotate(45deg) translateY(-1px);
    display: block;
}

/* ------------- */

.CdIndicacao {
    display: flex;
    align-items: center;
    gap: 14px;
    background: rgba(250, 204, 20, 0.07);
    border: 1px solid rgba(250, 204, 20, 0.25);
    border-radius: 10px;
    padding: 14px 16px;
    margin-bottom: 20px;
}

.CdIndicacao_Ico {
    width: 28px;
    height: 28px;
    min-width: 28px;
    color: rgba(250, 204, 20, 0.9);
}

.CdIndicacao_Titulo {
    font-family: 'hinted-Dobra-Bold', sans-serif;
    font-size: 13px;
    color: rgba(250, 204, 20, 0.95);
    margin-bottom: 2px;
}

.CdIndicacao_Sub {
    font-family: 'hinted-Dobra-Book', sans-serif;
    font-size: 12px;
    color: #888;
    line-height: 1.4;
}

.CdIndicacao_Sub strong {
    color: #ccc;
    font-family: 'hinted-Dobra-Medium', sans-serif;
    font-weight: normal;
}

/* ====== Icone central (cadeado / chave) ====== */

.LgIconWrap {
    text-align: center;
    margin-bottom: 16px;
}

.LgIconBox {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: 12px;
}

.LgIconBox i {
    width: 24px;
    height: 24px;
}

.LgIconBox--amarelo {
    background: rgba(250, 204, 20, 0.08);
    border: 1px solid rgba(250, 204, 20, 0.2);
}

.LgIconBox--amarelo i {
    color: rgba(250, 204, 20, 0.9);
}

.LgIconBox--verde {
    background: rgba(34, 197, 94, 0.1);
    border: 1px solid rgba(34, 197, 94, 0.25);
    margin-bottom: 16px;
}

.LgIconBox--verde i {
    color: rgba(34, 197, 94, 0.9);
}

/* ====== Bloco de sucesso ====== */

#BlcSucesso {
    display: none;
    text-align: center;
}

#BlcSucesso .LgCard_Titulo {
    margin-bottom: 8px;
}

#BlcSucesso .LgCard_Sub {
    margin-bottom: 0;
}

.FrmOlho .IcoEyeOff {
    display: none !important;
}

/* ====== Info do usuario (RecuperarSenha2) ====== */

.LgUserInfo {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 10px;
    padding: 14px 16px;
    text-align: center;
    margin-bottom: 24px;
}

.LgUserInfo_Nome {
    font-family: 'hinted-Dobra-Bold', sans-serif;
    font-size: 15px;
    color: #fff;
    margin-bottom: 4px;
}

.LgUserInfo_Email {
    font-family: 'hinted-Dobra-Book', sans-serif;
    font-size: 12px;
    color: #666;
    margin-bottom: 8px;
}

.LgUserInfo_Tipo {
    display: inline-block;
    font-family: 'hinted-Dobra-Medium', sans-serif;
    font-size: 11px;
    background: rgba(250, 204, 20, 0.1);
    color: rgba(250, 204, 20, 0.85);
    border: 1px solid rgba(250, 204, 20, 0.2);
    border-radius: 20px;
    padding: 3px 10px;
}




/*
############
Cadastro
############
*/

.CdCard {
    max-width: 560px;
}

/* CdGrid2: ver css.css */

.CdSecTitulo {
    font-family: 'hinted-Dobra-Medium', sans-serif;
    font-size: 11px;
    color: #555;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    margin-bottom: 16px;
    margin-top: 4px;
}

.CdSecTitulo_Top {
    margin-top: 20px;
}

#BlcCandidato {
    display: none;
}

/* CdSelect: ver css.css */

.CdTermos {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-top: 20px;
    margin-bottom: 4px;
}

.CdTermos input[type="checkbox"] {
    -webkit-appearance: none;
    appearance: none;
    width: 18px;
    height: 18px;
    min-width: 18px;
    margin-top: 1px;
    background: #0d0d0d;
    border: 1.5px solid rgba(255, 255, 255, 0.18);
    border-radius: 4px;
    cursor: pointer;
    position: relative;
    flex-shrink: 0;
    transition: border-color 0.2s, background 0.2s;
}

.CdTermos input[type="checkbox"]:checked {
    background: rgba(250, 204, 20, 1);
    border-color: rgba(250, 204, 20, 1);
}

.CdTermos input[type="checkbox"]:checked::after {
    content: '';
    position: absolute;
    left: 5px;
    top: 2px;
    width: 5px;
    height: 9px;
    border: 2px solid #000;
    border-top: none;
    border-left: none;
    transform: rotate(45deg);
}

.CdTermos label {
    font-family: 'hinted-Dobra-Book', sans-serif;
    font-size: 12px;
    color: #777;
    line-height: 1.5;
    cursor: pointer;
}

.CdTermos label a {
    color: rgba(250, 204, 20, 0.85);
    text-decoration: none;
}

.CdTermos label a:hover {
    text-decoration: underline;
}

@media screen and (max-width: 600px) {

    .CdGrid2 {
        grid-template-columns: 1fr;
    }

}

/* ------------- */

/* ====== Wizard de Cadastro Empresa ====== */

.CdWizSteps {
    display: flex;
    align-items: flex-start;
    margin-bottom: 28px;
    gap: 0;
}

.CdWizStepItem {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    flex: 1;
    position: relative;
}

.CdWizStepItem:not(:last-child)::after {
    content: '';
    position: absolute;
    top: 15px;
    left: calc(50% + 18px);
    width: calc(100% - 36px);
    height: 1px;
    background: rgba(255, 255, 255, 0.08);
}

.CdWizStepItem.concluido:not(:last-child)::after {
    background: rgba(250, 204, 20, 0.4);
}

.CdWizStep_Circulo {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #1a1a1a;
    border: 1.5px solid rgba(255, 255, 255, 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'hinted-Dobra-Bold', sans-serif;
    font-size: 12px;
    color: #444;
    position: relative;
    z-index: 1;
    transition: all 0.3s;
    flex-shrink: 0;
}

.CdWizStepItem.ativo .CdWizStep_Circulo {
    background: rgba(250, 204, 20, 0.1);
    border-color: rgba(250, 204, 20, 0.7);
    color: rgba(250, 204, 20, 0.9);
}

.CdWizStepItem.concluido .CdWizStep_Circulo {
    background: rgba(250, 204, 20, 1);
    border-color: rgba(250, 204, 20, 1);
    color: #000;
}

.CdWizStep_Label {
    font-family: 'hinted-Dobra-Book', sans-serif;
    font-size: 10px;
    color: #3a3a3a;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: color 0.3s;
    white-space: nowrap;
}

.CdWizStepItem.ativo .CdWizStep_Label {
    color: rgba(250, 204, 20, 0.75);
}

.CdWizStepItem.concluido .CdWizStep_Label {
    color: #666;
}

/* Paineis do wizard */

.CdWizPasso {
    display: none;
}

.CdWizPasso.ativo {
    display: block;
}

/* Navegacao do wizard */

.CdWizNav {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-top: 24px;
}

.CdWizBtnVoltar {
    padding: 6px;
    background: transparent;
    color: #555;
    font-family: 'hinted-Dobra-Medium', sans-serif;
    font-size: 13px;
    border: none;
    border-radius: 9px;
    cursor: pointer;
    transition: all 0.2s;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    text-decoration: underline;
    text-underline-offset: 2px;
    text-decoration-color: rgba(85, 85, 85, 0.4);
}

.CdWizBtnVoltar:hover {
    color: #888;
    text-decoration-color: rgba(136, 136, 136, 0.6);
}

.CdWizBtnVoltar svg {
    width: 13px;
    height: 13px;
    stroke: currentColor;
}

.CdWizBtnCont {
    width: 100%;
    padding: 13px;
    background: rgba(250, 204, 20, 1);
    color: #000;
    font-family: 'hinted-Dobra-Bold', sans-serif;
    font-size: 15px;
    border: none;
    border-radius: 9px;
    cursor: pointer;
    transition: background 0.2s;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.CdWizBtnCont:hover {
    background: rgba(250, 204, 20, 0.88);
}

.CdWizBtnCont:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

.CdWizBtnCont svg {
    width: 16px;
    height: 16px;
    stroke: currentColor;
}

.CdWizBtnCont.carregando span {
    display: none;
}

.CdWizBtnCont.carregando svg {
    display: none;
}

.CdWizBtnCont.carregando .LgSpinner {
    display: block;
}

/* Texto opcional no label */

.CdOpcional {
    font-family: 'hinted-Dobra-Book', sans-serif;
    font-size: 10px;
    color: #444;
    text-transform: none;
    letter-spacing: 0;
    font-style: italic;
}
