/* Navbar hamburger button */

.navbar-toggler {

    font-size: 1.5rem;

    border: none;

}



/* Navbar links spacing */

.nav-link {

    padding: 0.5rem 1rem;

}



@media (max-width: 991px) {

    .nav-item {

        text-align: center;

        width: 100%;

    }



    .nav-item .btn {

        width: 90%;

        margin: 0.5rem auto;

    }

}



/* Invoice Table Custom Styles */

.custom_invoice_tbl th,

.custom_invoice_tbl td {

    vertical-align: middle !important;

}



.description-textarea {

    resize: none;

}



/* Subtotal styling */

#formatted_subtotal {

    font-weight: bold;

    font-size: 1.1rem;

}



/* Icons buttons */

.icon {

    cursor: pointer;

    display: inline-block;

    width: 30px;

    text-align: center;

}



/* Terms section */

.terms-conditions h4 {

    font-weight: bold;

}



/* Responsive adjustments for mobile */

@media (max-width: 767px) {



    .custom_invoice_tbl th,

    .custom_invoice_tbl td {

        font-size: 0.9rem;

        padding: 0.4rem;

    }



    .sub-tot-title {

        font-size: 1rem;

    }



    .btn-lg {

        width: 100%;

    }

}



.invoice-details {

    max-width: 900px;

    margin: 20px auto;

    padding: 20px;

    border: 1px solid #ddd;

    border-radius: 10px;

    background-color: #fff;

}



.invoice-details img {

    max-width: 150px;

    margin-bottom: 10px;

}



.header {

    display: flex;

    justify-content: space-between;

    align-items: center;

    margin-bottom: 20px;

}



.contact-info p {

    margin: 2px 0;

    font-size: 14px;

}



.invoice-header h2 {

    text-align: center;

    margin: 20px 0;

    font-size: 28px;

    color: #007bff;

}



.invoice-info-container {

    display: flex;

    justify-content: space-between;

    flex-wrap: wrap;

    margin-bottom: 20px;

}



.invoice-info {

    font-size: 16px;

    margin-bottom: 5px;

}



.invoice-info-wrap p {

    margin-bottom: 5px;

}



table {

    width: 100%;

    border-collapse: collapse;

    margin-bottom: 20px;

}



table th,

table td {

    border: 1px solid #ddd;

    padding: 8px;

    text-align: left;

    font-size: 14px;

}



table th {

    background-color: #f8f9fa;

}



table td.text-end {

    text-align: right;

}



.terms-conditions,

.details-section {

    margin-top: 20px;

}



.terms-conditions h1,

.details-section h1 {

    font-size: 18px;

    color: #007bff;

    margin-bottom: 10px;

}



.details-section p,

.details-section li {

    font-size: 14px;

    margin-bottom: 5px;

}



.details-section ul {

    padding-left: 20px;

}



@media (max-width: 768px) {

    .header {

        flex-direction: column;

        align-items: flex-start;

    }



    .invoice-info-container {

        flex-direction: column;

    }



    table th,

    table td {

        font-size: 12px;

    }

}



.btn-primary {

    display: inline-block;

    padding: 10px 20px;

    font-size: 16px;

    background-color: #007bff;

    color: white;

    border: none;

    border-radius: 5px;

    text-decoration: none;

}



.edit-btn {

    padding: 8px 12px;

    font-size: 10px;

}

footer {
    text-align: center;
    padding: 15px 0;
    /*margin-top: 40px;*/
}