*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    font-family:Arial;
    background:#0f172a;
    color:white;
    padding:20px;
}

body.light{
    background:#f1f5f9;
    color:#111;
}

header{
    text-align:center;
    margin-bottom:20px;
}

.top-bar{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:10px;
    margin-top:10px;
}

.progress-container{
    width:300px;
    height:10px;
    background:#444;
    border-radius:10px;
    overflow:hidden;
}

#progress-bar{
    height:100%;
    width:0%;
    background:#22c55e;
}

.board{
    display:flex;
    gap:20px;
    overflow-x:auto;
    padding-bottom:20px;
}

.column{
    min-width:260px;
    padding:15px;
    border-radius:10px;
    display:flex;
    flex-direction:column;
}

.cards{
    min-height:120px;
}

.card{
    background:white;
    color:#333;
    padding:12px;
    border-radius:6px;
    margin-bottom:10px;
    cursor:grab;
    position:relative;
}

.card small{
    display:block;
    margin-top:4px;
}

.card-buttons{
    position:absolute;
    top:6px;
    right:6px;
    display:flex;
    gap:6px;
}

.card-buttons button{
    border:none;
    background:transparent;
    cursor:pointer;
    font-size:14px;
    opacity:0.6;
}

.card-buttons button:hover{
    opacity:1;
}

.planejamento{background:#6366f1;}
.documentacao{background:#0ea5e9;}
.modelagem{background:#06b6d4;}
.arquitetura{background:#14b8a6;}
.desenvolvimento{background:#22c55e;}
.versionamento{background:#84cc16;}
.testes{background:#f59e0b;}
.implantacao{background:#ef4444;}
.documentacaoFinal{background:#9333ea;}
.concluido{background:#374151;}

.modal{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,0.6);
    display:none;
    align-items:center;
    justify-content:center;
}

.modal-content{
    background:white;
    color:#333;
    padding:30px;
    border-radius:10px;
    width:100%;
    max-width:400px;
}

.form-group{
    display:flex;
    flex-direction:column;
    margin-bottom:15px;
}

.form-group label{
    margin-bottom:5px;
    font-weight:bold;
}

.form-group input,
.form-group select{
    padding:10px;
    border:1px solid #ccc;
    border-radius:6px;
}

.modal-buttons{
    display:flex;
    gap:10px;
}

.save{
    background:#22c55e;
    color:white;
    padding:8px 14px;
    border:none;
    border-radius:6px;
    cursor:pointer;
}

.cancel{
    background:#ef4444;
    color:white;
    padding:8px 14px;
    border:none;
    border-radius:6px;
    cursor:pointer;
}