/* Root */
:root{
    --vinno-text-color: rgb(51, 51, 51); 
    --vinno-border-type: 1px solid #e5e7eb;
    --main-color: #b97127;
    --main-color-hover: #a36526;
}
.download-file-template-link{
    color: white;
    /* font-size: 13px; */
    margin-bottom: 7px;
    font-weight: bold;
    text-decoration: underline!important;
}
body:not(.uid-1) .block-local-tasks-block ul.tabs.primary li a[href$="/permissions"] {
    display: none;
}
.node-loaihs-edit-form.node-form .form-type-checkbox{
    display: flex;
}

.w-10{
    width:10%;
}
.btn-back{
    font-size: 17px;
    color: grey;
    margin-right: 10px;
}
.views-align-right {
    text-align: right;
}
.views-align-center {
    text-align: center;
}
.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3), .input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-control, .input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-select, .input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating){
    border-top-right-radius: 0.25rem!important;
    border-bottom-right-radius: 0.25rem!important;
}
.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
    /* margin-left: -1px; */
    border-top-left-radius: 0.25rem!important;
    border-bottom-left-radius: 0.25rem!important;
}
.handsontable table .htCheckboxRendererInput{
    height: 16px;
}
body:not(.uid-0) main.page-content{
    background-color: #f4f5fa;
}
form:not(.views-exposed-form) fieldset .fieldset-legend{
    color: var(--main-color);
}
.btn.btn-primary{
    background-color: var(--main-color);
    opacity: 100%;
    color: white;
}
.btn.btn-primary:hover{
    background-color: var(--main-color-hover);
}
body{
    background-color: #F4F5FA!important;
}
summary{
    color: var(--main-color)!important;
    padding-block: 0!important;
}
form .form-disabled input.form-text{
    width: -webkit-fill-available;
}
label[id*= '-error']{
    width: 100%;
}
.ui-dialog .views-exposed-form fieldset:not(.fieldgroup){
    padding-block: 30px; 
}
/* .view-id-sanpham .views-form div[data-drupal-selector = "edit-views-bulk-operations-bulk-form-2"]{

} */
.dropdown-menu.export div.views-data-export-feed a{
    text-indent: unset;
    background: unset;
}
.field-group-table table.node-hoso-view,
.field-group-table table.node-hopdong-view {
    table-layout: fixed; /* để width của th có tác dụng */
    width: 100%; /* cho phép responsive */
    border-collapse: collapse;
}

.field-group-table table.node-hoso-view th,
.field-group-table table.node-hopdong-view th {
    width: 180px; /* cố định chiều rộng */
    max-width: 50%;
    word-wrap: break-word; /* cho phép xuống dòng */
    white-space: normal;   /* cho phép xuống dòng */
    text-align: left;
}

.field-group-table table.node-hoso-view td,
.field-group-table table.node-hopdong-view td {
    word-wrap: break-word; /* cho phép xuống dòng */
    white-space: normal;   /* cho phép xuống dòng */
}
/* View */
.view.view-sanpham table.table,
.view.view-hoso table.table,
.view.view-hopdong table.table {
    caption-side: top;
}

/* Form dự án */
.header-dottt-duan i{
    line-height: 1.2;
    font-size: 13px;
}
/* Dashboard dự án */

.dashboard-duan-container .card {
    background: #fff;
    border-radius: 12px;
    border: var(--vinno-border-type);
    box-shadow: 0 4px 12px rgba(0,0,0,0.06);
    transition: all 0.3s ease;
}
.dashboard-duan-container .card:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.1);
}
.dashboard-duan-container .card h3 {
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: 0.75rem;
    color: var(--main-color);
}
.dashboard-duan-container .desc-wrapper {
    max-height: 180px;
    overflow: hidden;
    position: relative;
    line-height: 1.6;
    font-size: 0.95rem;
    color: #374151;
    transition: max-height 0.2s ease-in-out;
    /* display: -webkit-box; */
    /* -webkit-line-clamp: 7; 
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    overflow-wrap: break-word;
    word-break: break-word; */
}
.dashboard-duan-container .desc-wrapper::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2em; /* khoảng cao mờ */
    background: linear-gradient(to bottom, rgba(255,255,255,0), #fff);
    pointer-events: none;
}
.dashboard-duan-container .desc-wrapper.expanded {
    max-height: 5000px; /* đủ lớn để mở rộng */
    -webkit-line-clamp: unset;
    padding-bottom: 25px;
}
.dashboard-duan-container .show-more-div {
    margin-top: 0.5rem;
    color: var(--main-color);
    font-weight: 500;
    cursor: pointer;
    user-select: none;
    /* display: inline-block; */
    font-weight: bold;
    /* padding: 6px 10px; */
    border-radius: 6px;
    /* background-color: #f8f9fa; */
    /* box-shadow: inset 0 0 0 1px #e5e7eb; */
    transition: background-color 0.3s ease, color 0.3s ease, box-shadow 0.3s ease;
    display: none;
}
/* .dashboard-duan-container .show-more-div:hover { */
    /* background-color: var(--main-color); */
    /* color: #fff; */
    /* box-shadow: inset 0 0 0 1px var(--main-color); */
/* } */
.dashboard-duan-container .show-more-div.active {
    display: inline-block; /* Chỉ hiện khi cần */
}
.dashboard-duan-container .gallery {
    display: grid;
    grid-template-columns: repeat(auto-fill,minmax(160px,1fr));
    gap: 1rem;
}
.dashboard-duan-container .gallery img {
    width: 100%;
    height: 120px;
    object-fit: cover;
    border-radius: 12px;
    border: var(--vinno-border-type);
    transition: transform 0.3s ease;
}
.dashboard-duan-container .gallery img:hover {
    transform: scale(1.05);
}
.dashboard-duan-container .progress-db {
    background: #e5e7eb;
    border-radius: 8px;
    overflow: hidden;
    height: 10px;
    margin-top: 0.5rem;
}
.dashboard-duan-container  .list-unstyled{
    margin-left: 0;
}

.dashboard-duan-container .card-ttcb{
    height: 100%;
}

.dashboard-duan-container .col-sanpham .card-body a{
    /* color: var(--vinno-text-color); */
    font-weight: bold;
}
.dashboard-duan-container .progress-bar {height: 100%;background: #22c55e;}
.dashboard-duan-container .bg-trienkhai,
.dashboard-duan-container .bg-dautu,
.thongtin-duan-container .bg-trienkhai,
.thongtin-duan-container .bg-dautu {
    background-color: #0ea5e9!important;
}

.dashboard-duan-container .bg-phattrien,
.thongtin-duan-container .bg-phattrien {
    background-color: #f59e0b!important;
}
.dashboard-duan-container .bg-bangiao,
.dashboard-duan-container .bg-hoanthien,
.thongtin-duan-container .bg-bangiao,
.thongtin-duan-container .bg-hoanthien {
    background-color: #22c55e!important;
}
.dashboard-duan-container .bg-tamdung,
.thongtin-duan-container .bg-tamdung {
    background-color: red!important;
}
.dashboard-duan-container .ttda-col {margin-bottom: 10px;}

.field--name-field-duan-filedinhkem > .field__item > .table-responsive > table tbody td{
    padding: 10px;
} 
.field--name-field-duan-filedinhkem > .field__item > .table-responsive > table{
    /* border: solid 1px black; */
}


/* Áp dụng cho bảng bạn muốn */
.field--name-field-duan-filedinhkem table {
    border-collapse: collapse; /* giống bootstrap */
    border: 1px solid #dee2e6;
    width: 100%; /* tùy bạn, bootstrap mặc định width 100% */
}

/* Thêm border cho các cell */
.field--name-field-duan-filedinhkem table th,
.field--name-field-duan-filedinhkem table td {
    border: 1px solid #dee2e6;
    padding: 0.5rem; /* khoảng cách ô chuẩn bootstrap */
    vertical-align: top; /* căn giống bootstrap */
}

/* Nếu muốn viền trên dòng đầu tiên */
.field--name-field-duan-filedinhkem table tbody tr:first-child th,
.field--name-field-duan-filedinhkem table tbody tr:first-child td {
    border-top: 1px solid #dee2e6;
}

/* Viền giữa các hàng */
.field--name-field-duan-filedinhkem table tbody tr + tr th,
.field--name-field-duan-filedinhkem table tbody tr + tr td {
    border-top: 1px solid #dee2e6;
}

.field--name-field-duan-filedinhkem > .field__item > .table-responsive > table th{
    color: black;
    font-weight: bold;
}
/* Form đăng ký Anonymous */
/* Định dạng form đăng ký cho anonymous user */

.anonymous-dangky-form {
    max-width: 800px;
    margin: 40px auto;
    padding: 30px;
    background: #f9fafb;
    border-radius: 12px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
    font-family: "Helvetica Neue", sans-serif;
    box-sizing: border-box;
}

.anonymous-dangky-form .field--name-field-dangky-doituong .fieldset-wrapper{
    position: relative;
}

.anonymous-dangky-form .field--name-field-dangky-doituong .description.formtips-processed.formtips-show{
    position: absolute;
    top:0;
}
.anonymous-dangky-form .field--name-field-dangky-doituong .description.formtips-processed.formtips-show a{
    color: white;
}
@media(min-width: 1200px){
    .anonymous-dangky-form .field--name-field-dangky-doituong legend .fieldset-legend{
        display: flex;
    }
}

.anonymous-dangky-form .motadoituong{
    text-transform: none!important;
    margin-left: 10px;
    /* margin-top: 2px; */
}
.anonymous-dangky-form .motadoituong p{
    margin-bottom: 4px;
}
.anonymous-dangky-form .motadoituong *{
    font-size: 13px;
    /* color: red; */
    /* margin-left: 15px; */
}
.anonymous-dangky-form .motadoituong-light{
    font-size: 12px;
    font-weight: 500;
    margin-left: 10px;
    /* color: red; */
    /* margin-left: 15px; */
}
.anonymous-dangky-form .motadoituong-light + .formtip{
    display: none;
}
.anonymous-dangky-form h2.form-heading {
    text-align: center;
    font-size: 26px;
    color: #1e293b;
    margin-bottom: 24px;
    font-weight: 600;
}
.anonymous-dangky-form .field--name-field-dangky-thanhviengiadinh .field-multiple-table thead h4.label{
    color: var(--main-color);
}
.anonymous-dangky-form .field--name-field-dangky-thanhviengiadinh .table-responsive{
    overflow: unset;
}
.anonymous-dangky-form .anonymous-hidden{
    display: none;
}
.anonymous-dangky-form .term-reference-tree-button,
.anonymous-dangky-form .no-term-reference-tree-button{
    display: none;
    /* visibility: hidden;
    width: 0; */
}
.anonymous-dangky-form .field--widget-term-reference-tree .parent-term{
    margin-left: 7px;
}
.anonymous-dangky-form .field--widget-term-reference-tree .parent-term
.anonymous-dangky-form .field--name-field-dangky-thanhviengiadinh{
    margin-bottom: 30px;
}
.anonymous-dangky-form .field--name-field-dangky-thanhviengiadinh tr > th{
    background-color: transparent;
    padding: 0;
}
.anonymous-dangky-form .field--name-field-dangky-thanhviengiadinh tr > th.field-label h4{
    font-size: unset;
    color: #0678be;
    font-weight: 700;
    text-transform: uppercase;
}
.anonymous-dangky-form input[type="text"]{
    min-width: unset;
}
.anonymous-dangky-form .field--name-field-dangky-thanhviengiadinh tr.draggable{
    border-bottom: var(--vinno-border-type);
}
.anonymous-dangky-form .field--name-field-dangky-thanhviengiadinh tr.draggable > td > div > div[data-drupal-selector*='edit-field-dangky-thanhviengiadinh-'],
.anonymous-dangky-form .field--name-field-dangky-thanhviengiadinh tr.draggable > td > .ajax-new-content > div > div[data-drupal-selector*='edit-field-dangky-thanhviengiadinh-'],
.anonymous-dangky-form .field--name-field-dangky-thanhviengiadinh tr.draggable .field-multiple-drag a{
    /* margin-bottom: 15px; */
    margin-top: 10px;
}
.anonymous-dangky-form .field--name-field-dangky-thanhviengiadinh tr.draggable .field-multiple-drag{
    min-width: 0;
}
.anonymous-dangky-form .field--name-field-dangky-thanhviengiadinh table.field-multiple-table th,
.anonymous-dangky-form .field--name-field-dangky-thanhviengiadinh table.field-multiple-table td{
    min-width: 0;
}
.anonymous-dangky-form .field--name-field-dangky-thanhviengiadinh div.form-item{
    margin-bottom: 15px;
}
form .js-form-item-field-dangky-xntt-value{
    padding-left: 0;
}

.anonymous-dangky-form .js-form-item-field-dangky-xntt-value .input-group label.error{
    display: none!important;
}
form.node-form.anonymous-dangky-form .form-actions{
    background-color: transparent;
}
.anonymous-dangky-form .chosen-container-single .chosen-single, .chosen-container-multi .chosen-choices{
    height: 32px;
}
.anonymous-dangky-form .term-reference-tree-level .js-form-item.form-item label,
.anonymous-dangky-form .term-reference-tree-level .js-form-item.form-item label a{
    font-weight: bold;
}
.anonymous-dangky-form .term-reference-tree-level .term-reference-tree-level .js-form-item.form-item label{
    font-weight: 400;
}
/* Submit button */
.anonymous-dangky-form input[type="submit"],
.anonymous-dangky-form button[type="submit"] {
    /* background-color: #1d4ed8; */
    color: white;
    border: none;
    /* padding: 14px 20px; */
    border-radius: 8px;
    font-size: 16px;
    cursor: pointer;
    transition: background-color 0.3s ease;
    display: block;
    width: 100%;
    box-sizing: border-box;
}

.anonymous-dangky-form input[type="submit"]:hover,
.anonymous-dangky-form button[type="submit"]:hover {
    background-color: #2563eb;
}


.anonymous-dangky-form .field--name-field-dangky-thanhviengiadinh input[type="submit"],
.anonymous-dangky-form .field--name-field-dangky-thanhviengiadinh button[type="submit"] {
    /* background-color: #1d4ed8; */
    /* color: white; */
    color: var(--main-color);
    background-color: transparent;
    box-shadow: unset!important;
    font-weight: bold;
    padding-block: 0px;
    width: auto;
}

.anonymous-dangky-form .field--name-field-dangky-thanhviengiadinh input[type="submit"]:hover,
.anonymous-dangky-form .field--name-field-dangky-thanhviengiadinh button[type="submit"]:hover {
    /* background-color: #2563eb; */
    color: var(--main-color-hover);
}


.anonymous-dangky-form .term-reference-tree-level{
    margin-left: 1.5em!important;
}

.anonymous-dangky-form .item-list .field--widget-term-reference-tree ul .form-item, 
.anonymous-dangky-form .block .field--widget-term-reference-tree ul .form-item, 
.anonymous-dangky-form .field--widget-term-reference-tree ul .form-item{
    margin-left: -1em;
}
.node-dangky-form .item-list .field--widget-term-reference-tree ul .form-item p, 
.node-dangky-form .block .field--widget-term-reference-tree ul .form-item p, 
.node-dangky-form .field--widget-term-reference-tree ul .form-item p,
.node-dangky-edit-form .item-list .field--widget-term-reference-tree ul .form-item p, 
.node-dangky-edit-form .block .field--widget-term-reference-tree ul .form-item p, 
.node-dangky-edit-form .field--widget-term-reference-tree ul .form-item p{
    margin-bottom: 0;
}
/* .anonymous-dangky-form .term-reference-tree-level .term-reference-tree-level */
/* .anonymous-dangky-form .form-heading {
    font-size: 28px;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 24px;
    text-align: center;
    line-height: 1.4;
    border-bottom: 2px solid #e2e8f0; 
    padding-bottom: 10px;
} */

.anonymous-dangky-form .form-heading {
    font-size: 28px;
    font-weight: 700;
    color: #1f2937; /* Slate-800 */
    margin-bottom: 8px;
    text-align: center;
    line-height: 1.3;
}
  
.anonymous-dangky-form .sub-form-heading {
    font-size: 20px;
    font-weight: 500;
    color: #475569; /* Slate-600 */
    /* margin-bottom: 24px; */
    text-align: center;
    line-height: 1.3;
    font-style: italic;
    padding-bottom: 10px;
}
.anonymous-dangky-form .sub-form-seemore{
    margin-bottom: 24px;
}
.anonymous-dangky-form #edit-cancel{
    display: none;
}
.anonymous-dangky-form .logo-duan img{
    height: 70px;
}
/* Responsive */
@media (max-width: 768px) {
    .anonymous-dangky-form {
        padding: 20px;
        margin: 20px;
    }

    .anonymous-dangky-form .form-heading {
        font-size: 22px;
        margin-bottom: 20px;
    }
    .anonymous-dangky-form .sub-form-heading {
        font-size: 18px;
    }
}

/* Trang thông báo không được phép đăng ký */
.notify-box {
    max-width: 650px;
    margin: 80px auto;
    padding: 40px 30px;
    border-radius: 16px;
    background: linear-gradient(135deg, #ffffff, #f9fafb);
    border: 3px solid #2563eb; /* viền dày nổi bật */
    box-shadow:
      0 8px 20px rgba(0, 0, 0, 0.08),
      0 0 0 4px rgba(37, 99, 235, 0.1); /* viền sáng bên ngoài */
    /* display: flex; */
    font-family: 'Segoe UI', Tahoma, sans-serif;
    animation: fadeIn 0.5s ease-in-out;
}
.notify-inside-box{
    display: flex;
    align-items: center;
    gap: 24px;
    /* padding-top: 30px; */
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

.notify-icon {
    flex-shrink: 0;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: #2563eb;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 32px;
    color: #fff;
    box-shadow: 0 4px 12px rgba(0,0,0,0.2);
    transform: scale(1);
    transition: transform 0.3s ease;
}

.notify-icon:hover {
    transform: scale(1.1);
}

.notify-content {
    flex: 1;
}

.notify-project {
    font-size: 20px;
    font-weight: 600;
    color: #111827;
    margin-bottom: 8px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.notify-title {
    margin: 0 0 20px;
    font-size: 24px;
    font-weight: 700;
    color: #1e40af;
    line-height: 1.4;
}

.notify-button {
    display: inline-block;
    padding: 12px 22px;
    border-radius: 8px;
    background: #2563eb;
    color: #fff;
    text-decoration: none;
    font-weight: 600;
    font-size: 16px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    transition: all 0.3s ease;
}

.notify-button:hover {
    background: #1e40af;
    transform: translateY(-2px);
    box-shadow: 0 6px 14px rgba(0,0,0,0.2);
}

/* Thêm màu sắc theo trạng thái nếu muốn */
.notify-box.status-closed {
    border-color: #6b7280;
}
.notify-box.status-closed .notify-icon {
    background: #6b7280;
}
.notify-box.status-closed .notify-title {
    color: #374151;
}

.notify-box.status-expired {
    border-color: #dc2626;
}
.notify-box.status-expired .notify-icon {
    background: #dc2626;
}
.notify-box.status-expired .notify-title {
    color: #b91c1c;
}

.notify-box.status-soon {
    border-color: #f59e0b;
}
.notify-box.status-soon .notify-icon {
    background: #f59e0b;
}
.notify-box.status-soon .notify-title {
    color: #b45309;
}

.notify-box.status-open {
    border-color: #16a34a;
}
.notify-box.status-open .notify-icon {
    background: #16a34a;
}
.notify-box.status-open .notify-title {
    color: #065f46;
}
.field-group-tabs-wrapper .horizontal-tabs{
	border: unset;
}
.horizontal-tabs-list{
	background: transparent!important;
	border-bottom: unset!important;
}
.horizontal-tabs .horizontal-tabs-list .horizontal-tab-button{
	background: transparent;
	border-right: unset;
	border-bottom: 1px solid #71717A;
	margin-left: 5px;
	/* opacity: 50%; */
}
.horizontal-tab-button.selected{
	border-bottom: 3px solid var(--main-color);
	/* opacity: 70%; */
}

.horizontal-tab-button a{
    border-radius: 10px;
    padding-block: 0.3em!important;
    color: black;
    font-weight: normal;
    background-color: #EAEDF0;
}
.horizontal-tab-button a:hover{
    color: black;
    background-color: #ede9e9;
}
.horizontal-tab-button a strong{
    font-weight: normal!important;
}

.horizontal-tabs .horizontal-tabs-list .horizontal-tab-button.selected a{
	/* color: var(--main-color); */
    /* background-color: #00213d;
    color: #FFA604; */
    /* background-color: var(--main-color); */
    background-color: #101B28;
    color: white;
    /* color: #d78d4f; */
}

.horizontal-tabs .horizontal-tabs-list .horizontal-tab-button.selected a:hover{
	/* color: var(--main-color); */
    /* background-color: #00213d;
    color: #FFA604; */
    background-color: var(--main-color-hover);
    color: white;
    /* color: #d78d4f; */
}
.horizontal-tab-button{
    border-bottom: none!important;
}

.notify-xacthuc .notify-title{
    margin-bottom: 0;
}

.status-0 .notify-title{
    color: #dc2626;
}
.status-0 .notify-icon{
    background-color: white;
    border-radius: 50%;
    border: 2px solid #dc2626;
}

.notify-box.notify-xacthuc.status-0{
    border: 3px solid #dc2626;
}
.status-1 .notify-icon{
    background-color: white;
    border-radius: 50%;
    border: 2px solid #2563eb;
}

/* Dropbutton */

.dropbutton-widget{
    border-radius: 15px;
    overflow: hidden;
    /* border: 1px solid #a6a6a6!important */
    border: 0!important;
}

.dropbutton-single .dropbutton-action a{
    /* border-radius: 15px;
    overflow: hidden; */
    border: 0!important;
}

.view .view-content .table-responsive{
    overflow-x: unset;
}

.js .dropbutton-multiple .dropbutton-widget,
.dropbutton-single .dropbutton-action a{
    background-color: var(--main-color)!important;
}
.js .dropbutton-multiple .dropbutton-widget a,
.dropbutton-single .dropbutton-action a{
    color: white!important;
}

.js .dropbutton-wrapper .dropbutton-widget .dropbutton-action a:hover, .js .dropbutton-wrapper .dropbutton-widget .dropbutton-action button:hover, .js .dropbutton-wrapper .dropbutton-widget .dropbutton-action input:hover, .js .dropbutton-wrapper .dropbutton-widget .dropbutton-action a:focus, .js .dropbutton-wrapper .dropbutton-widget .dropbutton-action button:focus, .js .dropbutton-wrapper .dropbutton-widget .dropbutton-action input:focus{
    background-color: var(--main-color-hover)!important;
}
.js .dropbutton-wrapper .dropbutton-widget .dropbutton-toggle button:hover, .js .dropbutton-wrapper .dropbutton-widget .dropbutton-toggle button:focus{
    background-color: transparent!important;
}
.js .dropbutton-wrapper .dropbutton-widget .dropbutton-toggle button{
    border-left: 0!important;
}
.js .dropbutton-wrapper .dropbutton-widget .dropbutton-toggle button .dropbutton-arrow{
    border-top-color: white!important;
}

.dropbutton-multiple.open .dropbutton-widget .dropbutton-toggle button .dropbutton-arrow{
    border-top-color: transparent!important;
    border-bottom-color: white!important;
}

/* End */

/* Trang đăng nhập 1 lần */
/* Gói form */
.pace-done.path-user.uid-0 .user-pass-reset {
    max-width: 420px;           /* form không quá rộng */
    margin: 60px auto;          /* căn giữa form */
    padding: 30px 25px;
    background: #ffffff;        /* nền trắng */
    border-radius: 12px;        /* bo góc */
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    font-family: "Segoe UI", Roboto, sans-serif;
    color: #333;
    line-height: 1.6;
}
  
  /* Các đoạn mô tả */
.pace-done.path-user.uid-0 .user-pass-reset p {
    margin-bottom: 15px;
    font-size: 15px;
    color: #555;
}
  
  /* Nhấn mạnh số điện thoại */
.pace-done.path-user.uid-0 .user-pass-reset em.placeholder {
    font-style: normal;
    font-weight: 600;
    color: #111;
}
  
  /* Vùng chứa nút */
.pace-done.path-user.uid-0 .user-pass-reset .form-actions {
    margin-top: 25px;
    text-align: center;
}
  
  /* Nút đăng nhập */
.pace-done.path-user.uid-0 .user-pass-reset .button,
.pace-done.path-user.uid-0 .user-pass-reset .form-submit {
    display: inline-block;
    background: #3b82f6;          /* xanh primary */
    color: #fff;
    border: none;
    border-radius: 8px;
    padding: 10px 24px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.3s ease;
    text-decoration: none;
}
  
  /* Hover nút */
.pace-done.path-user.uid-0 .user-pass-reset .button:hover,
.pace-done.path-user.uid-0 .user-pass-reset .form-submit:hover {
    background: #2563eb;          /* xanh đậm hơn khi hover */
}

/* Trang Nộp hồ sơ/Duyệt hồ sơ */
.dropbutton-single .dropbutton-action a.bg-done{
    background-color: #0dc50d!important;
    transition: 0.3s ease;
}
.js .dropbutton-wrapper .dropbutton-widget .dropbutton-action a.bg-done:hover,
.js .dropbutton-wrapper .dropbutton-widget .dropbutton-action a.bg-done:focus{
    background-color: green!important;
}

.view-id-filehoso.view-display-id-page_1 table th{
    color: black;
}
  
/* Danh sách sản phẩm */
.view-sanpham.view-display-id-page_1 [id *= 'view-nothing-table-column'],
.view-sanpham.view-display-id-page_2 [id *= 'view-nothing-table-column']{
    width: 250px;
}
.view-sanpham.view-display-id-page_1 .views-field-field-sanpham-tgmoban,
.view-sanpham.view-display-id-page_2 .views-field-field-sanpham-tgmoban,
.view-sanpham.view-display-id-page_1 .views-field-field-sanpham-tgban-dukien,
.view-sanpham.view-display-id-page_2 .views-field-field-sanpham-tgban-dukien{
    width: 150px;
}

.view-sanpham.view-display-id-page_1 .views-field-field-sanpham-ma,
.view-sanpham.view-display-id-page_2 .views-field-field-sanpham-ma{
    width: 150px;
}

.view-sanpham.view-display-id-page_1 .views-field-field-sanpham-trangthai,
.view-sanpham.view-display-id-page_2 .views-field-field-sanpham-trangthai{
    width: 180px;
}

/* Danh sách hồ sơ */
.view-id-hoso [id *= 'view-field-dangky-hoten-table-column']{
    width: 300px;
}

.view-id-hoso [id *= 'view-nothing-table-column']{
    width: 120px;
}
.view-id-hoso [id *= 'view-field-hoso-duan-table-column']{
    width: 300px;
}
.view-id-hoso [id *= 'view-field-hoso-kqboctham-table-column']{
    width: 200px;
}
/* Trang xem hồ sơ */
#hoso-nophoso > h3 {
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: 0.75rem;
    color: var(--main-color);
}

.box-hoso-item{
    background: #fff;
    border-radius: 12px;
    border: var(--vinno-border-type);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
    transition: all 0.3s ease;
    padding: 20px;
    color: var(--bs-card-color);
}
@media (min-width: 720px){
    .path-node.page-node-type-hoso .node__content,
    .path-node.page-node-type-khachhang .node__content{
        position: relative;
    }
    .path-node.page-node-type-hoso .node__content .field--name-field-hoso-nophs-markup,
    .path-node.page-node-type-khachhang .node__content .field--name-field-khachhang-btn-markup{
        /* position: absolute; */
        /* right: 1em; */
        /* top: 0; */
        justify-content: flex-end;
        z-index: 10;
        display: flex;
        gap: 10px;
        margin-bottom: 15px;
    }
}


.hoso-tt {
    display: inline-block;       /* để nó ôm chữ */
    padding: 4px 10px;           /* khoảng đệm */
    font-weight: 600;
    /* border: 1px solid #c3e6cb; */
    border-radius: 20px;         /* bo tròn giống tag */
    white-space: nowrap;         /* không xuống dòng */
    color: white;
    font-size: 12px;
}

.path-node.page-node-type-hoso table.node-hoso-view,
.path-node.page-node-type-hoso table.node-hopdong-view,
.path-node.page-node-type-ykien table.node-ykien-view{
    /* display: flex; */
    /* align-items: flex-start; */
    border: none;
    width: auto;
}
.path-node.page-node-type-hoso table.node-hoso-view th,
.path-node.page-node-type-hoso table.node-hopdong-view th,
.path-node.page-node-type-ykien table.node-ykien-view th{
    white-space: nowrap;
    width: auto;
    font-size: 14px;
    font-weight: unset;
    color: rgb(145, 145, 145);
}
.path-node.page-node-type-hoso table.node-hoso-view td,
.path-node.page-node-type-hoso table.node-hopdong-view td,
.path-node.page-node-type-ykien table.node-ykien-view td{
    padding-left: 30px;
    color: black;
}

.path-node.page-node-type-hoso table.node-hoso-view *,
.path-node.page-node-type-hoso table.node-hopdong-view *,
.path-node.page-node-type-ykien table.node-ykien-view * {
    border: none!important;
}

.path-node.page-node-type-hoso article.node.node--type-hopdong.node--view-mode-full > h2{
    display: none;;
}
/* .path-node.page-node-type-hoso .hopdong-view-hoso{
    right: 0;
    top: 0;
} */
.path-node.page-node-type-hoso .field--label-inline .field__label{
    font-weight: bold;
    padding: 5px 10px;
    /* width: 25%; */
    /* min-width: 150px; */
    /* text-align: right; */
    /* max-width: max-content; */
}
.path-node.page-node-type-hoso .field--label-inline .field__item{
    padding: 5px 10px;
}

/* 161: Nộp hồ sơ */
.hoso-tt-161 {
    background-color: #3b82f6; /* xanh dương */
  }
  
  /* 162: Chờ duyệt hồ sơ */
  .hoso-tt-162 {
    background-color: #f59e0b; /* vàng cam */
  }
  
  /* 163: Đủ điều kiện */
  .hoso-tt-163 {
    background-color: #10b981; /* xanh lá */
  }
  
  /* 164: Đã nhận bản cứng */
  .hoso-tt-164 {
    background-color: #6366f1; /* xanh tím */
  }
  
  /* 165: Chờ Sở duyệt */
  .hoso-tt-165 {
    background-color: #8b5cf6; /* tím */
  }
  
  /* 166: Chờ bốc thăm */
  .hoso-tt-166 {
    background-color: #06b6d4; /* xanh cyan */
  }
  
  /* 167: Ký hợp đồng */
  .hoso-tt-167 {
    background-color: #0d9488; /* teal đậm */
  }
  
  /* 168: Đã hoàn thành */
  .hoso-tt-168 {
    background-color: #16a34a; /* xanh lá đậm */
  }
  
  /* 169: Từ chối */
  .hoso-tt-169 {
    background-color: #ef4444; /* đỏ */
  }

/* Xem chi tiết */
body.user-logged-in.page-node-type-duan .region-content,
body.user-logged-in.page-node-type-hoso .region-content,
body.user-logged-in.page-node-type-ykien .region-content{
    background-color: transparent!important;
}
body.user-logged-in.page-node-type-duan .region-content form.node-form,
body.user-logged-in.page-node-type-ykien .region-content form.node-form{
    padding: 20px;
}
body.user-logged-in.page-node-type-duan .region-content form.node-form,
body.user-logged-in.page-node-type-ykien .region-content form.node-form{
    background-color: white;
}

body.user-logged-in.page-node-type-duan .region-content .field-group-fieldset,
body.user-logged-in.page-node-type-hoso .region-content .field-group-fieldset,
body.user-logged-in.page-node-type-ykien .region-content .field-group-fieldset{
    background-color: white;
}
body.user-logged-in.page-node-type-hoso .horizontal-tabs-pane,
body.user-logged-in.page-node-type-duan .horizontal-tabs-pane,
body.user-logged-in.page-node-type-ykien .horizontal-tabs-pane{
    padding-inline: 0;
}
/* Danh sách đơn đăng ký */
.view-dondk.view-id-dondk.view-display-id-page_1 [id *='view-field-dangky-duan-table-column'],
.view-dondk.view-id-dondk.view-display-id-page_2 [id *='view-field-dangky-duan-table-column']{
    width: 250px;
}

.view-dondk.view-id-dondk.view-display-id-page_1 [id *='view-field-dangky-hoten-table-column'],
.view-dondk.view-id-dondk.view-display-id-page_2 [id *='view-field-dangky-hoten-table-column']{
    width: 270px;
}

/* Extra header */
.my-extra-header-below-bulk{
    margin-block: 7px;
}
@media(min-width: 720px){
    .my-extra-header-below-bulk{
        float: right;
    }
    .view-content .table-responsive{
        clear: both;
    }
}

/* Trang ý kiến phản hồi */
@media (min-width: 992px) {
    body.user-logged-in.page-node-type-ykien .region-content {
        padding-bottom: 10px;
    }
    .row-yeucau .group_table_right table th{
        /* vertical-align: top; */
        padding-left: 0;
    }
}

.row-yeucau{
    padding-bottom: 20px;
    /* border-bottom: solid .1px #e9e7e7; */
}

.row-yeucau .group_table_left table td{
    text-align: right;
}

.row-yeucau .group_table_right table td{
    text-align: left;
}

.row-yeucau .group_table_right table th{
    vertical-align: top;
    /* padding-left: 0; */
}

.row-yeucau .field--name-field-ykien-cauhoi .field__label{
    white-space: nowrap;
    width: auto;
    font-size: 14px;
    font-weight: unset;
    color: rgb(145, 145, 145);
}
.field--name-field-ykien-hoten.field__item{
    font-size: 14px;
    font-weight: bold;
}

.view-content .phanhoi-nguoiphanhoi{
    font-size: 14px;
    font-weight: bold;
}

.view-content .phanhoi-email,
.view-content .phanhoi-sdt{
    font-size: 12px;
    /* font-weight: bold; */
}

.view-content .phanhoi-thoigian{
    font-size: 12px;
    color: grey;
    font-style: italic;
    
}

.phanhoi-item i{
    width: 15px;
    font-size: 12px;
}
.views-field.views-field-nothing .info-ykienphanhoi{
    padding-left: 27px;
}
.view-id-phanhoi.view-display-id-block_1 .view-content .views-field.views-field-nothing{
    border-bottom: solid 1px #e9e7e7;
    padding-block: 14px;
}

.text-phanhoi-gannhat{
    font-size: 11px;
}

/* Dialog */
.ui-dialog-off-canvas .form--inline .form-item, .ui-dialog-content .form--inline .container-inline .form-item, .ui-dialog-off-canvas .form--inline .button.button--small{
    margin-left: 0;
}

/* In */
.actionPrint > .dropdown .dropdown-menu li a{
    font-size: 14px;
}
.actionPrint > .dropdown > a{
    color: white;
}
.actionPrint > .tacvu > a{
    font-size: 14px;
}

/* Group table */
.node__content .field-group-table table.table > tbody > tr > th{
    min-width: 150px;
}

.node__content .field-group-table table.table > tbody > tr > td{
    word-wrap: break-word;
}

body.uid-0.path-node .page-content .order-2.order-lg-2.col-12,
body.uid-0.path-dangky {
    background-image: var(--background-url);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    background-attachment: fixed;
}
body.uid-0.path-dangky *{
    background-color: transparent;
}
/* View thanh toán */
.view-thanhtoan .vbo-view-form .form-actions{
    justify-content: flex-start;
}
.view-thanhtoan .vbo-view-form .form-actions .vbo-description.text-muted{
    width: 100%;
}
/* View đợt thanh toán */
.view-dotthanhtoan .views-field-field-dotthanhtoan-sotien,
.view-dotthanhtoan .views-field-field-dotthanhtoan-conlai,
.view-dotthanhtoan .views-field-field-dotthanhtoan-dadong{
    width: 170px;
}

.view .views-field.is-active a{
    padding-right: 10px;
}

.dottt-1{
    color: green;
}

.dottt-0{
    color: red;
}

.view-dotthanhtoan tfoot{
    font-weight: bold;
}

.footable th,
.footable th a{
    font-weight: bold;
}

.footable th{
    color: black;
}

.view-dotthanhtoan .footable .footable-details {
    margin-top: 0;
}

.view-dotthanhtoan .footable .footable-details tbody td{
    padding: 5px;
}

.view-dotthanhtoan .footable-detail-row > td{
    padding: 5px;
}

/* Danh sách các bước đăng ký */
.status-bar-dkkh .progress-container {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 12px;
    margin-bottom: 40px;
    gap: 12vw;
}
.status-bar-dkkh .step-box{
    position: relative;
    display: flex;
    justify-content: center;
    border-radius: 50%;
    width: 30px;
    height: 30px;
}
.status-bar-dkkh .step {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: bold;
    /* position: relative; */
}
.buoc-step{
    position: absolute;
    bottom: -31px;
    width: 150px;
    text-align: center;
}
.status-bar-dkkh .step-box::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -12vw;
    width: 12vw;
    height: 2px;
    background-color: #ccc;
    transform: translateY(-50%);
    z-index: 0;
}

.status-bar-dkkh .step-box:last-child::after {
    display: none;
}

.status-bar-dkkh .completed,
.status-bar-dkkh .completed:after{
    background-color: #3498db!important;
}
.status-bar-dkkh .completed .buoc-absolute{
    color: #3498db;
}

.status-bar-dkkh .active,
.status-bar-dkkh .active::after {
    background-color: #000!important;
}
.status-bar-dkkh .active .buoc-absolute{
    columns: #000;
}

.status-bar-dkkh .upcoming,
.status-bar-dkkh .upcoming::after {
    background-color: #aaa!important;
}
.status-bar-dkkh .upcoming .buoc-absolute{
    color: #aaa;
}
.status-bar-dkkh .finished,
.status-bar-dkkh .finished:after {
    background-color: #007808!important;
}
.status-bar-dkkh .finished .buoc-absolute{
    color: #007808;
}

.status-bar-dkkh .error-message {
    color: red;
}
.status-bar-dkkh .error-message::before {
    content: "⚠️ ";
}
.status-bar-dkkh .finished-message {
    color: #1fcb2a;
}
.status-bar-dkkh .finished-message::before {
    content: "✅ ";
}
.status-bar-dkkh .status-bar-message{
    text-align: center;
    margin-top: 20px;
    font-weight: bold;
}

/* Sơ đồ sản phẩm */
.ttsp-hd-chuaky{
    background-color: rgb(189, 215, 238)!important;
}
.ttsp-hd-chuaky a{
    color: black;
}
.ttsp-hd-daky{
    background-color: rgb(255, 0, 0)!important;
}
.ttsp-hd-daky a{
    color: white;
}
.ttsp-nothd{
    background-color: rgb(146, 208, 80)!important;
}
.ttsp-hd-dadat{
    background-color: rgb(146, 208, 80)!important;
}
.ttsp-hd-dadat a{
    color: white;
}
.ttsp-nothd a{
    color: black;
}
.ttsp-null{
    background-color: white!important;
}
.ttsp-null a{
    color: black;
}
.ttsp-hd-lock{
    background-color: rgb(197, 134, 33)!important;
}
.ttsp-hd-lock a{
    color: white!important;
}

.view-id-hopdong.view-display-id-page_9 th:first-child,
.view-id-hopdong.view-display-id-page_9 td:first-child {
  position: sticky;
  left: 0;
  background: #fff;  /* nên set background để che phần bên dưới khi scroll */
  z-index: 2;        /* giữ ưu tiên hiển thị trên các cột khác */
    
}

.view-id-hopdong.view-display-id-page_9 th:first-child {
    z-index: 3;
    background: #f5f5f5;
}

/* báo cáo tuần */
.bao-cao-tuan-title {
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    margin: 20px 0;
    padding: 10px;
    border-bottom: 2px solid #0056b3;
    color: #0056b3;
    text-transform: uppercase;
    letter-spacing: 1px;
}
  

/* Báo cáo chạy tiến độ */
.table-bc-chaytiendo {
    border-collapse: collapse;
    width: 100%;
    text-align: center;
  }
  
  /* Giữ lại CSS gốc của bạn */
  .table-bc-chaytiendo td,
  .table-bc-chaytiendo th {
    padding: 7px;
    border: 1px solid #ccc;
    white-space: nowrap;
  }
  
  .table-bc-chaytiendo .table-bc-month {
    min-width: 120px;
  }
  .table-bc-chaytiendo .table-bc-stt {
    min-width: 30px;
  }
  .table-bc-chaytiendo .table-bc-noidung {
    min-width: 300px;
  }
  .table-bc-chaytiendo .table-bc-sl {
    min-width: 50px;
  }
  
  /* Cột 1 (STT) sticky */
  .table-bc-chaytiendo th.table-bc-stt,
  .table-bc-chaytiendo td:nth-child(1) {
    position: sticky;
    left: 0;
    background: #fff;
    z-index: 3;
    min-width: 30px;
  }
  


/* Cột 2 (Nội dung) dính khi scroll ngang */
.table-bc-chaytiendo th.table-bc-noidung,
.table-bc-chaytiendo td:nth-child(2) {
  position: sticky;
  left: 30px; /* phải bằng (hoặc lớn hơn) width của cột 1 */
  background: #fff;
  z-index: 3;
  min-width: 300px;
  /* border-right: 2px solid #666; */
}
.table-res-bc-tiendo {
    max-height: 80vh; /* bạn chỉnh theo nhu cầu */
    overflow: auto;
}

/* Sticky header */
.table-bc-chaytiendo thead th {
    position: sticky;
    top: 0;
    background: #fff; /* hoặc màu bạn muốn */
    z-index: 2; /* để nổi lên trên */
    border-bottom: 2px solid #dee2e6;
}

/* Sticky cột đầu tiên */
.table-bc-chaytiendo th.table-bc-stt,
.table-bc-chaytiendo td:first-child {
    position: sticky;
    left: 0;
    background: #fff; /* giữ màu nền khi kéo ngang */
    z-index: 3; /* cao hơn header thường */
    border-right: 1px solid #dee2e6;
}

/* Nếu muốn cell giao giữa header + cột đầu tiên luôn trên cùng */
.table-bc-chaytiendo thead th.table-bc-stt {
    z-index: 12;
}

.table-bc-chaytiendo th.table-bc-stt,
.table-bc-chaytiendo th.table-bc-noidung{
    z-index: 10;
    /* background-color: yellow; */
}
/* .table-bc-chaytiendo th{
    background-color: yellow!important;
} */

.btn-banghang a.banghang-disabled{
    /* color: white; */
    pointer-events: none;
    opacity: 0.65;
}

.node-lock-form .form-item.form-type-radio,
.node-lock-edit-form .form-item.form-type-radio{
    display: flex;
}

.node-lock-form .js-form-item-field-lock-history-0-value .ck-editor .ck-editor__top,
.node-lock-edit-form .js-form-item-field-lock-history-0-value .ck-editor .ck-editor__top{
    display: none;
}