/*
Theme Name: Olsecufile
Description: Thietkewebchuyen.com
Author: Thietkewebchuyen.Com
Template: flatsome
Version: 3.2.2.2.1
*/

a:hover { color: var(--primary-color); }
span.amount { color: red; font-size: 23px; }

.ecu-file-layout { display: flex; gap: 30px; }
.info-block { flex: 1; }
.block-header { background-color: #ebebeb; padding: 12px 15px; margin: 0; font-size: 22px; font-weight: bold; color: #333; border-bottom: 3px solid #333; }
.info-row { display: flex; align-items: center; padding: 10px 0; border-bottom: 1px solid #eee; }
.info-row:last-child { border-bottom: none; }
.info-label { width: 160px; font-weight: bold; color: #000; position: relative; padding-right: 15px; }
.info-label::after { content: ""; position: absolute; right: 0; top: 0; bottom: 0; width: 1px; border-right: 1px dotted #bbb; }
.info-value { flex: 1; padding-left: 15px; color: #444; }

.h-filter-container { background: #f8f8f8; border: 1px solid #e0e0e0; border-radius: 4px; padding: 20px; }
.h-filter-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 15px 20px; }
.h-field label { display: block; font-size: 13px; font-weight: bold; margin-bottom: 6px; color: #555; }
.h-field input[type="text"] { width: 100%; padding: 8px 12px; border: 1px solid #ccc; border-radius: 3px; font-size: 14px; height: 38px; box-sizing: border-box; }
.btn-field { display: flex; align-items: flex-end; justify-content: flex-end; }
.btn-h-search { background-color: #4eb0e9; color: #fff; border: 1px solid #3d9cd6; padding: 0 30px; height: 38px; border-radius: 4px; cursor: pointer; font-weight: bold; }

.product-table-wrapper { width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; margin: 20px 0; border: 1px solid #e0e0e0; border-radius: 4px; }
.product-table-container { min-width: 900px; }
.custom-product-table { width: 100%; border-collapse: collapse; background-color: #fff; }
.custom-product-table thead th { background-color: #ebebeb; color: #333; font-weight: 700; text-align: left; padding: 15px; border-bottom: 1px solid #ddd; white-space: nowrap; }
.custom-product-table tbody td { padding: 9px 5px; border-bottom: 1px solid #eee; color: black; white-space: nowrap; }
.custom-product-table tbody tr:nth-child(even) { background-color: #f9f9f9; }
.custom-product-table tbody tr:hover { background-color: #f1f1f1; }
.btn-details { display: inline-block; background-color: #f19b4c; color: #fff !important; padding: 6px 18px; border-radius: 3px; text-decoration: none !important; font-size: 13px; font-weight: 500; }

.table-pagination { padding: 15px; text-align: right; }
.table-pagination .page-numbers { padding: 5px 10px; border: 1px solid #ddd; margin-left: 5px; text-decoration: none; color: #333; }
.table-pagination .current { background: #f19b4c; color: #fff; border-color: #f19b4c; }

@media (max-width: 992px) { .h-filter-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 768px) {
    .ecu-file-layout { flex-direction: column; }
    .custom-product-table thead { display: table-header-group !important; }
    .custom-product-table tbody td { display: table-cell !important; text-align: left !important; position: static !important; }
    .custom-product-table tbody td::before { display: none !important; }
}
@media (max-width: 600px) { .h-filter-grid { grid-template-columns: 1fr; } }