/*************************************ALL INVOICE TEMPLATE CSS IS WRITTEN HERE**********************************/
.sw-invoice-template {
    width: 70%;
    background-color: #ffffff;
    margin: 0 auto;
    margin-bottom: 10px;
    border-radius: 8px;
}

.sw-invoice-header {
    position: relative !important;
    overflow: hidden;
    max-width: 100%;
}

.sw-invoice-logo {
    margin: 15px;
    width: 152px;
    height: 152px;
    max-width: 152px;
    max-height: 152px;
}
.sw-invoice-logo img{
    width: 150px;
    height: 150px;
    max-width: 200px;
    max-height: 200px;
}

.sw-invoice-status {
    position: absolute;
    bottom: 0;
    right: -23px;
    padding: 8px;
    background-color: #f1f1f1;
    width: 306px;
    height: 80px;
    transform: rotate(35deg);
    transform-origin: right;
    padding: 10px;
   
}

.sw-invoice-status p {
    text-align: center;
    color: #000000;
    font-weight: bold;
    margin: 10px;
}

.sw-invoice-number {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    width: 98%;
    margin: 10px auto;
    padding: 5px;
    background-color: #f1f1f1;
    border-radius: 4px;
}

.sw-invoice-number span {
    font-weight: bold;
    text-align: center;
    margin-left: 40px;
}

.sw-invoice-dates {
    display: flex;
    flex-direction: column;
    color: #000;
}
.sw-invoice-dates p{
    font-size: 14px;
}

.sw-invoice-reference {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 0px 7px;
    font-size: 14px;

}
.sw-invoice-reference .sw-invoice-reference-invoiced-to,
.sw-invoice-reference .sw-invoice-reference-pay-to {
    width: 45%;
}
.sw-invoice-reference .sw-invoice-reference-invoiced-to p,
.sw-invoice-reference .sw-invoice-reference-pay-to p {
    font-size: 14px;
}
.sw-invoice-reference .sw-invoice-reference-invoiced-to h3,
.sw-invoice-reference .sw-invoice-reference-pay-to h3 {
    font-size: 18px;
}

.sw-invoice-items-container {
    display: block;
    padding: 20px;
    width: 100%;
}

.sw-invoice-item-item-container {
    display: block;
    align-items: center;
    width: 100%;
}
.sw-invoice-item-table {
    width: 100%;
    border-collapse: collapse;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
}

.sw-invoice-item-table thead {
    background: #f1f1f1;
    color: #333333;
}
.sw-invoice-item-table th, 
.sw-invoice-item-table td {
    padding: 10px 14px;
    border: none !important;
    border-bottom: 1px solid #e0e0e0 !important;
    text-align: left;
    vertical-align: middle;
}
.sw-invoice-item-table th {
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.sw-invoice-item-table tbody tr:nth-child(even) {
    background: #f1f1f1;
}
.sw-invoice-item-table tbody {
    background-color: #ffffff;
}

.sw-invoice-footer {
    width: 90%;
    background-color: #ffffff;
    margin: 20px auto 20px auto !important;
    border-radius: 9px;
}

.sw-invoice-footer .sw-block-button-container {
    display: flex;
    flex-direction: row;
    gap: 5px;
    margin: 10px;
    padding: 10px;
}

.sw-invoice-footer .sw-thank-you {
    padding: 10px;
    margin: 10px;
    text-align: center;
    font-weight: bold;
}

.sw-invoice-metadata {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 25px;
    padding: 10px;
    overflow: hidden;
    height: 300px;
    scrollbar-width: thin;
    scrollbar-color: #aaabec #fff;
}

.sw-invoice-metadata:hover {
    overflow: auto;
}

.sw-invoice-meta-cards {
    flex: 1;
    border: solid #dcdcde .5px;
    border-radius: 3px;
    padding: 6px;
    min-width: 250px;
    height: 100px;
	box-shadow: 2px 2px 8px 4px rgba(0, 0, 0, 0.1);
}
.sw-invoice-meta-cards p {
    text-align: center;
    overflow-wrap: anywhere;
}

.sw-invoice-meta-cards p:first-child {
    font-size: 16px;
    font-weight: bold;
}

.sw-invoice-meta-cards .sw-invoice-card-footer-value {
    text-decoration: none;
}
.sw-invoice-meta-cards .sw-invoice-card-footer-value a {
    color: #0073e6;
    text-decoration: none;
 
}
@media (min-width: 19px) and (max-width:768px) {
    .sw-invoice-template {
        margin: 10px auto;
        width: 90%;
    }
    .sw-invoice-item-table th,
    .sw-invoice-item-table td {
        padding: 10px;
        font-size: 13px;
    }

    @media (min-width: 426px) and (max-width: 648px) {
        .sw-invoice-logo img {
            max-width: 150px;
            max-height: 150px;
        }
        .sw-invoice-status {
            transform: rotate(46deg);
            width: 240px;
            height: 60px;
            padding: 2px;
        }
    }

    @media(max-width:425px) {
        .sw-invoice-header {
            height: 115px;
        }
        .sw-invoice-logo img {
            max-width: 100px;
            max-height: 100px;
        }

        .sw-invoice-status {
            transform: rotate(43deg);
            width: 177px;
            height: 50px;
            padding: 0;
            bottom: -13px;
        }
        .sw-invoice-item-table thead,
        .sw-invoice-item-table tbody tr th {
            display: none;
        }
    
        .sw-invoice-item-table tbody,
        .sw-invoice-item-table tr,
        .sw-invoice-item-table td {
            display: block;
            width: 100%;
        }
    
        .sw-invoice-item-table td {
            text-align: right;
            padding-left: 50%;
            position: relative;
        }
        .sw-invoice-item-table td:before {
            content: attr(data-label);
            position: absolute;
            left: 10px;
            width: 45%;
            text-align: left;
            font-weight: 600;
            color: #555;
        }
         
        .sw-invoice-reference .sw-invoice-reference-invoiced-to p,
        .sw-invoice-reference .sw-invoice-reference-pay-to p {
            font-size: 12px;
        }
        .sw-invoice-reference .sw-invoice-reference-invoiced-to h3,
        .sw-invoice-reference .sw-invoice-reference-pay-to h3 {
            font-size: 16px;
        }
    }

    @media (min-width: 190px) and (max-width: 375px) {
        .sw-invoice-template {
            width: 99%;
        }
        .sw-invoice-number {
            flex-direction: column;
            padding: 2px;
            justify-content: unset;
        }
        .sw-invoice-number span {
            text-align: unset;
            margin-left: unset;
        }
        
        /* .sw-invoice-status {
            transform: rotate(38deg);
            width: 190px;
            padding: 0;
        } */
        .sw-invoice-logo img{
            max-width: 80px;
            max-height: 80px;
        }

        .sw-invoice-item-item-container {
            width: 100%;
            margin: none;
        }

        .sw-invoice-meta-cards {
            min-width: 230px;
        }

    }
}

.sw-cls-btn-no-print {
    color: #ffffff;
    background-color: red;
    cursor: pointer;
    font-size: 16px;
    font-weight: bold;
    position: fixed;
    top: 10;
    left: 90%;
    z-index: 9999;
}

@media print {
    .sw-cls-btn-no-print {
        display: none;
    }
    
}

.smartwoo-new-invoice-form-editor {
    width: 100%;
    max-width: 95%;
    margin: 0 auto;
    padding: 5px;
    box-sizing: border-box;
    background-color: #FFFFFF;
    border-radius: 8px;
}
.sw-invoice-editor-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}
.smartwoo-new-invoice-form-editor hr {
    border: dashed 1px #dcdcde;
}

.sw-invoice-editor-header .sw-invoice-editor-header-left {
    width: 152px;
    height: 152px;
    max-width: 152px;
    max-height: 152px;
}
.sw-invoice-editor-header-left img {
    width: 150px;
    height: 150px;
    max-width: 200px;
    max-height: 200px;
}
.sw-invoice-editor-header .sw-invoice-editor-header-right {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    text-align: right;
    max-width: 50%;
    margin-right: 15px;
}

.sw-invoice-editor-header-right .sw-service-form-row {
    align-self: right;
    width: 80%;
}


.sw-invoice-editor-reference-section {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    padding: 0px 7px;
}

.sw-invoice-editor-reference-section .sw-invoice-editor-customer-section,
.sw-invoice-editor-reference-section .sw-invoice-editor-biller-section {
    width: 47%;
}

.sw-invoice-editor-customer-section .sw-service-form-row {
    width: 100%;
    max-width: 45%;
    padding: 0;
}
.sw-invoice-editor-customer-section .sw-service-form-row select#sw_user_id {
    margin: unset;
    max-width: 250px;
}
.sw-invoice-editor-items-section {
    display: block;
    padding: 10px;
    width: 100%;
}
.sw-invoice-editor-items-section h2 {
    color:  #333333;
    font-size: 20px;
}
.sw-invoice-editor-items-list {
    width: 100%;
    overflow-x: auto;
}

.sw-invoice-editor-items-table {
    width: 90%;
    min-height: 100px;
    border-collapse: collapse;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
    margin: 5px auto;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
}
.sw-invoice-editor-items-table thead {
    background: #f1f1f1;
    color: #333333;
}

.sw-invoice-editor-items-table th,
.sw-invoice-editor-items-table td {
    padding: 10px 14px;
    border: none !important;
    border-bottom: 1px solid #e0e0e0 !important;
    text-align: left;
    vertical-align: middle;
}

.sw-invoice-editor-items-table td input {
    border: 1px solid #dcdcde;
}
.sw-invoice-editor-add-product-select select:focus,
.sw-invoice-editor-items-table td input:focus {
    border-width: 1.5px;
    box-shadow: 0 0 3px 2px rgba(175, 175, 175, 0.979);
}

.sw-invoice-editor-items-table td input.sw-invoice-editor-item-name-input {
    width: 100%;
}
.sw-invoice-editor-items-table td input.sw-invoice-editor-quantity-input {
    width: 50px;
}

.sw-invoice-editor-items-table td input.sw-invoice-editor-unit-price-input {
    width: 150px;
}

.sw-invoice-editor-add-product-select {
    display: flex;
    flex-direction: row;
    gap: 10px;
    width: 80%;
    margin: 10px;
}

.sw-invoice-editor-add-product-select select {
    width: 148px;
    border: solid 1px #dcdcde;

}

.sw-invoice-editor-item-summary-container {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    margin-right: 10px;
    gap: 10px;
}
.sw-invoice-editor-item-summary-container .sw-service-form-row {
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    gap: 10px
    
}

.sw-invoice-editor-item-summary-container .sw-service-form-row label {
    font-size: 18px;
}

.sw-invoice-editor-core-data {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 10px;
}
.sw-invoice-editor-core-data .sw-service-form-row {
    max-width: 45%;
    margin: unset;
}
.sw-invoice-editor-core-data .sw-service-form-row input,
.sw-invoice-editor-core-data .sw-service-form-row select {
    flex: 1;
}

.sw-invoice-editor-payment-gateways {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.sw-invoice-editor-payment-gateway-group {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    gap: 15px;
    text-align: left;
}

.sw-invoice-editor-payment-gateway-row {
    border-left: solid 5px #dcdcde;
    min-height: 50px;
    /* max-height: 100px; */
    width: 45%;
    padding: 2px;
    display: flex;
    flex-direction: row;
    align-items: center;
    background-color: #f1f1f1;
}

.sw-invoice-editor-payment-gateway-row label {
    flex: 1;
    font-weight: 600;
    display: flex;
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
    justify-content: space-evenly;
    gap: 5px;
    cursor: pointer;
}

.sw-invoice-editor-payment-gateway-row label > img {
    max-height: 100%;
    height: 80px;
    max-width: 80%;
}