:root{
    --primary:#135bec;
    --primary-hover:#0f4bc4;
    --surface-dark:#1a2233;
}

body{
    font-family:'Public Sans',sans-serif;
    height:100vh;
    overflow:hidden;
}

/* Layout principal */
.login-wrapper{
    height:100vh;
}

/* Coluna esquerda */
.login-left{
    background: var(--surface-dark);
    position: relative;
    color:white;
    overflow:hidden;
}

.login-left::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(to top, rgba(19,91,236,0.9), rgba(19,91,236,0.6), rgba(26,34,51,0.4));
    z-index:1;
}

.login-bg{
    position:absolute;
    inset:0;
    background-size:cover;
    background-position:center;
    opacity:0.8;
}

.login-left-content{
    position:relative;
    z-index:2;
    height:100%;
    padding:3rem;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
}

/* Coluna direita */
.login-right{
    background:white;
    overflow-y:auto;
}

.form-container{
    max-width:420px;
    width:100%;
}

/* Inputs custom */
.input-group-custom input{
    height:48px;
}

.btn-primary-custom{
    background:var(--primary);
    border:none;
    font-weight:700;
    color: #fff;
}

.btn-primary-custom:hover{
    background:var(--primary-hover);
}

.divider{
    display:flex;
    align-items:center;
    text-transform:uppercase;
    font-size:12px;
    font-weight:600;
    color:#6c757d;
}

.divider::before,
.divider::after{
    content:"";
    flex:1;
    height:1px;
    background:#dee2e6;
}

.divider span{
    padding:0 12px;
}