/* Telas de Entrar e Criar conta. */
.bw-page.cad-page {
    background:
        radial-gradient(ellipse at 50% 45%, rgba(10, 30, 110, 0.35), transparent 70%),
        repeating-linear-gradient(0deg, transparent 0 126px, rgba(40, 80, 220, 0.16) 126px 128px),
        repeating-linear-gradient(90deg, transparent 0 126px, rgba(40, 80, 220, 0.16) 126px 128px),
        linear-gradient(180deg, #06103a 0%, #081a5c 50%, #061142 100%);
    background-attachment: fixed;
}
.cad-wrap {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 32px 16px;
}
.cad-logo img { display: block; width: 88px; height: auto; margin-bottom: 26px; }
.cad-card {
    width: min(420px, 100%);
    background: #0f1430;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 14px;
    padding: 26px 24px 22px;
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45);
}
.cad-card h1 { margin: 0 0 6px; font-size: 26px; font-weight: 800; color: #fff; }
.cad-sub { margin: 0 0 22px; color: #b9c0dc; font-size: 15px; }
.cad-card form { display: flex; flex-direction: column; gap: 16px; }
.cad-input {
    width: 100%;
    background: #0b0f26;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 10px;
    color: #fff;
    font-size: 16px;
    padding: 14px 14px;
    outline: none;
    transition: border-color .15s, box-shadow .15s;
}
.cad-input::placeholder { color: #8a91ad; }
.cad-input:focus { border-color: #7c5cff; box-shadow: 0 0 0 3px rgba(124, 92, 255, 0.25); }
.cad-tel { position: relative; }
.cad-tel-prefixo {
    z-index: 1;
    position: absolute;
    top: 50%;
    left: 14px;
    transform: translateY(-50%);
    color: #fff;
    font-weight: 700;
    font-size: 16px;
    pointer-events: none;
}
.cad-tel.has-value .cad-input { padding-left: 54px; }
.cad-senha { position: relative; }
.cad-senha .cad-input { padding-right: 48px; }
.cad-olho {
    position: absolute; right: 10px; top: 50%; transform: translateY(-50%);
    width: 32px; height: 32px; display: grid; place-items: center;
    background: none; border: 0; color: #c9cfe6; cursor: pointer;
}
.cad-olho svg { width: 20px; height: 20px; }
.cad-btn {
    width: 100%;
    border: 0;
    border-radius: 10px;
    padding: 15px;
    background: linear-gradient(90deg, #7c5cff, #5b3df5);
    color: #fff;
    font-size: 16px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .02em;
    cursor: pointer;
    box-shadow: 0 10px 28px rgba(124, 92, 255, 0.4);
    transition: transform .15s, filter .15s;
}
.cad-btn:hover { transform: translateY(-1px); filter: brightness(1.06); }
.cad-btn:disabled { opacity: .6; cursor: default; transform: none; }
.cad-rodape { margin: 20px 0 0; text-align: center; color: #d5d9ea; font-size: 14px; }
.cad-rodape a { color: #38bdf8; }
.cad-erro {
    margin-bottom: 14px; padding: 11px 13px; border-radius: 10px; font-size: 14px;
    color: #fecaca; background: rgba(239, 68, 68, 0.12); border: 1px solid rgba(239, 68, 68, 0.35);
}
