body{
    background:#fff;
    font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;
    font-size:15px;
}

.container{
    max-width:1000px;
}

.application-card{
    background:#fff;
    padding:30px;
    border-radius:10px;
    box-shadow:0 2px 8px rgba(0,0,0,.08);
    margin:30px auto;
}

.section-title{
    margin-top:35px;
    margin-bottom:20px;
    padding-bottom:8px;
    border-bottom:2px solid #0d6efd;
    font-size:1.2rem;
    font-weight:600;
    color:#0d6efd;
}

.form-label{
    font-weight:600;
    margin-bottom:4px;
}

.form-control,
.form-select{

    border-radius:6px;

}

.form-control:focus,
.form-select:focus{

    box-shadow:none;

}

.form-control:focus:not(.is-invalid),
.form-select:focus:not(.is-invalid){

    border-color:#0d6efd;

}

.form-control.is-invalid:focus,
.form-select.is-invalid:focus{

    border-color:#dc3545;
    box-shadow:0 0 0 .25rem rgba(220,53,69,.25);

}

.repeater-row{

    background:#fff;

    border:1px solid #dee2e6;

    border-left:5px solid #0d6efd;

    border-radius:6px;

    padding:15px;

    margin-bottom:12px;

    transition:.2s;

}

.repeater-row:hover{

    background:#f8f9fa;

}

.btn-outline-primary{

    font-weight:600;

}

.btn-danger{

    white-space:nowrap;

}

.btn-success{

    min-width:45px;

}

.btn-danger{

    min-width:45px;

}

.required{

    color:#dc3545;

}

.footer-note{

    font-size:.9rem;
    color:#666;
    margin-top:25px;

}

.form-group{
    margin-bottom:18px;
}

.form-group label{
    display:block;
    font-weight:600;
    margin-bottom:6px;
}

.section{
    background:#fafafa;
    border:1px solid #ddd;
    border-radius:8px;
    padding:20px;
    margin-bottom:25px;
}

.section h3{
    margin:0 0 18px;
    color:#0d6efd;
    border-bottom:1px solid #ddd;
    padding-bottom:8px;
}

.btn-submit{

    min-width:260px;
    padding:12px 30px;
    font-size:1.05rem;
    font-weight:600;
    border-radius:8px;

}

.form-control.is-invalid,
.form-select.is-invalid{

    border-color:#dc3545;

}

.invalid-feedback{

    display:none;

}

.is-invalid ~ .invalid-feedback{

    display:block;

}
