body {
    height: 100vh;
    background-color: rgb(179, 179, 182, .6);
    background-image: url(./img/fundo.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    overflow-y: hidden;
}

/* ----------- CABEÇALHO ----------- */
.cabecalho {
    font-family: 'Tilt Warp', cursive;
    width: 100vw;
    color: #2badf3;
    padding: 10px;
    backdrop-filter: blur(4px);
    text-align: center;
}

.cabecalho span {
    color: #d66d79;
}

/* ALERTA */
.alerta{
    background-color: rgba(0, 0, 0, 0.548);
    border-radius: 20px;
    padding: 10px;
}

.alerta > p, .alerta > h5 {
    color: white;
}

#btnAlerta{
    width: 100%;
    color: black;
    background-color: white;
    padding: 8px;
    border: none;
    border-radius: 20px;
}

/* MENSAGEM TEMPORÁRIA */
#msgTemporaria {
    background-color: red;
    color: white;
    width: 90%;
    margin: auto;
    border-radius: 10px;
    font-weight: 700;
}

/* ----------- TABS ----------- */
.navTabs {
    margin-top: 20px;
    display: grid;
    grid-template-columns: 2fr 1fr;
}

.navTabs ul {
    padding: 0;
    margin: 0;
    list-style: none;
    display: grid;
    grid-template-columns: auto auto;
}

.navTabs li {
    text-align: center;
    margin-right: 10px;
}

.rdTabs {
    display: none;
}

.navTabs label {
    width: 100%;
    padding: 5px;
    display: inline-block;
    cursor: pointer;
}

.navTabs .corPendentes,
.corConcluidas,
.btnAdd {
    border-radius: 10px;
    font-size: 20px;
}

.corPendentes,
.corConcluidas,
.btnAdd {
    font-weight: 500;
    background-color: gray;
    transition: 0.5s;
    border: none;
}

.rdTabs:checked~.corPendentes {
    background-color: rgb(255, 255, 100);
    transition: 0.5s;
}

.rdTabs:checked~.corConcluidas {
    background-color: rgb(50, 255, 50);
    transition: 0.5s;
}

.btnAdd:hover {
    background-color: rgb(0, 150, 255);
    transition: 0.5s;
}

/* ----------- CARDS TAREFAS ----------- */
.containerRolagem {
    height: calc(100vh - 200px);
    overflow-y: scroll;
}

.containerRolagem::-webkit-scrollbar, .modalTarefa::-webkit-scrollbar {
    width: 0 ! important
}

.conteudo {
    padding: 8px;
    margin-top: 30px;
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 10px;
}

.cardTarefa {
    background-color: white;
    margin: 10px;
    padding: 10px 15px;
    border-radius: 20px;
    display: grid;
    position: relative;
    word-break: break-word;
    height: 190px;
    text-overflow: ellipsis;
    animation-name: cardTarefa;
    animation-duration: .8s;
    animation-fill-mode: forwards;
} 

.cardPend {
    border-left: 6px solid rgb(204, 204, 0);
    border-bottom: 6px solid rgb(204, 204, 0);;
}

.cardConc {
    border-left: 6px solid green;
    border-bottom: 6px solid green;
}

.cardTarefa h4 {
    font-family: 'Roboto Mono', monospace;
    font-weight: 900;
    text-align: center;
}

.cardTarefa h4+p {
    font-family: 'Roboto Mono', monospace;
    margin-bottom: 60px;
}

#txtTarefa, #txtCard  {
    white-space: pre-wrap;
} 

#editar {
    position: absolute;
    top: -10px;
    right: -10px;
    display: grid;
    align-items: center;
    justify-items: center;
    font-size: 20px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    color: black;
    background-color: white;
}

#verMais {
    position: absolute;
    top: -10px;
    left: -15px;
    display: grid;
    align-items: center;
    justify-items: center;
    font-size: 20px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    color: black;
    background-color: white;
}

.cardTarefa p {
    text-align: justify;
    overflow: hidden;
}

.opcoesCard {
    font-weight: 500;
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    justify-items: center;
    margin-top: 30px;
    position: absolute;
    left: 0;
    bottom: 0px;
}

#feito~label {
    color: green;
}

#excluir {
    color: red;
}

.cursor {
    cursor: pointer;
}

#data {
    font-weight: 700;
    border-radius: 5px;
    padding: 0 10px;
}

.dataPend {
    background-color: yellow;
    color: black;
}

.dataConc {
    background-color: green;
    color: white;
} 

/* ----------- JANELA MODAL ----------- */
.janelaModal {
    font-family: 'Roboto Mono', monospace;
    width: 100vw;
    height: 100vh;
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.5);
    align-items: center;
    justify-content: center;
    display: none;
    word-break: break-word;
}

.janelaModal h4 {
    font-weight: 900;
}

.abreModal {
    display: flex;
}

.modalTarefa {
    border: white;
    border-radius: 20px;
    background-color: rgba(255, 255, 255, 0.5);
    backdrop-filter: blur(5px);
    z-index: 999;
    max-width: 90vw;
    max-height: 90vh;
    overflow-y: auto;
    animation-name: abreModal;
    animation-duration: .5s;
    animation-fill-mode: forwards;
}

#modalTarefa {
    border-left: 8px solid rgb(255, 0, 0);
    border-bottom: 8px solid rgb(255, 0, 0);
    background-color: white;
}

.cancelar {
    background-color: rgba(255, 0, 0, 0.39);
}

.cancelar:hover,
.cancelar:active {
    background-color: rgb(233, 53, 53);
}

.cancelar:focus {
    background-color: rgb(255, 255, 255);
    border: solid 2px rgb(233, 53, 53);
}

#salvar {
    background-color: rgba(20, 235, 92, 0.425);
}

#salvar:hover,
#salvar:active {
    background-color: rgb(44, 202, 97);
}

#salvar:focus {
    background-color: rgb(255, 255, 255);
    border: solid 2px rgb(44, 202, 97);
}

#limpar {
    background-color: rgba(255, 255, 0, 0.425);
}

#limpar:hover,
#limpar:active {
    background-color: rgb(255, 255, 0);
}

#limpar:focus {
    background-color: rgb(255, 255, 255);
    border: solid 2px rgb(255, 255, 0);
}

.btnModal {
    transition: 0.8s;
}

.dBlock {
    display: block;
}

.dNone {
    display: none;
}

/* ----------- REPONSIVIDADE ----------- */
@media screen and (max-width: 1200px) {
    .conteudo {
        grid-template-columns: 1fr 1fr;
    }
}

@media screen and (max-width: 1000px) {
    .conteudo {
        grid-template-columns: auto;
    }
}

@media screen and (max-width: 450px) {

    .cabecalho {
        margin-bottom: 10px;
    }

    .navTabs .corPendentes,
    .corConcluidas,
    .btnAdd {
        font-size: 15px;
    }

    .cardTarefa {
        font-size: 15px;
    }

    .cardTarefa h4+p {
        margin-bottom: 100px;
    }

    .opcoesCard {
        display: grid;
        grid-template-columns: 1fr 1fr;
        justify-items: center;
        margin-top: 30px;
    }

    .opcoesCard #data {
        grid-column: 1 / 3;
    }

    .cardTarefa {
        height: 130px;
        font-size: 0.9rem;
    }

    .cardTarefa h4 {
        font-size: 1.2rem;
    }

    #tituloCard{
        height: 30px;
        margin-bottom: 0;
    }
}

/* ANIMAÇÕES */
@keyframes abreModal{
    from{
        opacity: 0;
        position: absolute;
        top: 50%;
        left: 40%;
        transform: translate(-50%,-50%);
    }
    to{
        opacity: 1;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%,-50%);
    }
}

@keyframes cardTarefa {
    from{
        opacity: 0;
        transform: translate(-20px, -10px);
    }
    to{
        opacity: 1;
        transform: translate(0, 0);
    }
}