body{
    background:#f2f5fa;
    margin:0;
    padding:20px;
    font-family:Arial;
}

.apollo-container{
    max-width:1200px;
    margin:auto;
    background:#fff;
    padding:30px;
    border-radius:10px;
    box-shadow:0 0 10px rgba(0,0,0,0.1);
}

.top{
    display:flex;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:20px;
}

.logo{
    width:140px;
}

.company-details{
    text-align:right;
    line-height:1.8;
}

h2{
    color:#004a99;
}

.grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:15px;
}

input, textarea, select{
    width:100%;
    padding:10px;
    border:1px solid #ccc;
    border-radius:5px;
}

table{
    width:100%;
    border-collapse:collapse;
    margin-top:20px;
}

table th{
    background:#004a99;
    color:white;
    padding:12px;
}

table td{
    border:1px solid #ddd;
    padding:10px;
}

.add-btn{
    margin-top:15px;
    background:#004a99;
    color:white;
    border:none;
    padding:10px 15px;
    cursor:pointer;
    border-radius:5px;
}

.remove-btn{
    background:red;
    color:white;
    border:none;
    padding:5px 10px;
    cursor:pointer;
}

.totals{
    width:400px;
    margin-left:auto;
    margin-top:20px;
}

.bank{
    margin-top:30px;
    background:#eef5ff;
    padding:20px;
    border-radius:8px;
}

.signature{
    margin-top:60px;
    display:flex;
    justify-content:space-between;
    gap:30px;
}

.line{
    border-top:1px solid #000;
    margin-top:70px;
    padding-top:5px;
}

.buttons{
    margin-top:30px;
    display:flex;
    gap:15px;
}

.buttons button{
    background:#004a99;
    color:white;
    border:none;
    padding:12px 20px;
    border-radius:5px;
    cursor:pointer;
}

.terms{
    margin-top:80px;
    page-break-before:always;
}

@media print{
    .buttons{
        display:none;
    }

    body{
        background:white;
    }
}