/* Giao diện riêng cho trang Văn bản */
.van-ban-page {
    padding: 30px 0 15px;
    background: url(/Design/img/TieuHocDucThang/dt-back.png) no-repeat;
    background-size: cover;
    background-position: right;
}

    .van-ban-page .detail-news-bottom {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 310px;
        gap: 26px;
        padding: 0 !important;
    }

        .van-ban-page .detail-news-bottom .my-left,
        .van-ban-page .detail-news-bottom .my-right {
            width: auto !important;
            float: none !important;
            padding: 0 !important;
        }

    .van-ban-page .detail-news-wrap {
        overflow: hidden;
        padding: 12px !important;
        border: 1px solid #e0edf3 !important;
        border-radius: 24px !important;
        background: #fff !important;
        box-shadow: 0 14px 40px rgba(31, 86, 132, .10);
    }

    .van-ban-page .detail-news-title {
        margin: 0 0 25px !important;
        color: #1e305b !important;
        font-family: 'Montserrat-ExtraBold' !important;
        font-size: clamp(26px, 3vw, 30px) !important;
        line-height: 1.2 !important;
        text-align: left !important;
        text-transform: none !important;
    }

        .van-ban-page .detail-news-title::before {
            display: block;
            width: fit-content;
            margin-bottom: 10px;
            padding: 6px 11px;
            color: #138d9e;
            content: "KHO VĂN BẢN";
            font-family: 'Inter_24pt-SemiBold';
            font-size: 10px;
            letter-spacing: .13em;
            border-radius: 999px;
            background: #e9fbf9;
        }

.search-filter {
    position: relative;
    margin: 0 0 22px;
    padding: 20px;
    border: 1px solid #d9edf0;
    border-radius: 18px;
    background: linear-gradient(135deg, #f1fcfb, #f4f9ff);
}

    .search-filter::before {
        position: absolute;
        top: 14px;
        right: 18px;
        color: #a6d8d6;
        content: "✦";
        font-size: 28px;
        display: none;
    }

.filter-container {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(180px, .8fr) auto;
    gap: 11px;
    align-items: center;
}

.filter-group {
    min-width: 0;
}

.filter-input,
.filter-select {
    width: 100%;
    height: 46px;
    box-sizing: border-box;
    padding: 0 14px;
    color: #35566a;
    font-family: 'Inter_24pt-Regular';
    font-size: 16px;
    outline: none;
    border: 1px solid #c9e0e5;
    border-radius: 12px;
    background: #fff;
    transition: border-color .2s ease, box-shadow .2s ease;
}

    .filter-input:focus,
    .filter-select:focus {
        border-color: #31b6b1;
        box-shadow: 0 0 0 3px rgba(49,182,177,.12);
    }

.filter-input {
    padding-left: 42px;
}

.keyword-group {
    position: relative;
}

    .keyword-group::before {
        position: absolute;
        z-index: 1;
        top: 14px;
        left: 15px;
        color: #55aeb3;
        content: "\f002";
        font-family: "Font Awesome 7 Free", "Font Awesome 6 Free";
        font-size: 14px;
        font-weight: 900;
    }

.action-group {
    display: flex;
    gap: 8px;
}

.search-filter .btn {
    height: 46px;
    padding: 0 15px;
    color: #fff;
    font-family: 'Inter_24pt-SemiBold';
    font-size: 14px;
    white-space: nowrap;
    border: 0;
    border-radius: 12px;
    cursor: pointer;
    transition: transform .2s ease, box-shadow .2s ease;
}

    .search-filter .btn:hover {
        transform: translateY(-2px);
        box-shadow: 0 7px 14px rgba(20,125,140,.18);
    }

.search-filter .btn-search {
    background: #00aee3;
}

.search-filter .btn-reset {
    color: #537183;
    background: #e8f1f4;
}

.line-infor-pagi {
    display: block !important;
    margin: 0 0 12px;
    color: #7793a2;
    font-family: 'Inter_24pt-SemiBold';
    font-size: 15px;
}

.p-van-ban {
    overflow: hidden;
    margin-bottom: 20px;
    border: 1px solid #e0edf3 !important;
    border-radius: 17px !important;
    background: #fff !important;
}

    .p-van-ban .heading,
    .p-van-ban .van-ban-item {
        display: grid !important;
        grid-template-columns: minmax(180px, 1.05fr) 130px minmax(240px, 1.8fr) 100px;
        align-items: center;
    }

    .p-van-ban .heading {
        background: linear-gradient(100deg, #167d96, #23aaa7);
    }

    .p-van-ban .heading-item {
        width: auto !important;
        height: 48px !important;
        padding: 0 12px;
        color: #fff !important;
        font-family: 'Inter_24pt-SemiBold';
        font-size: 12px;
        border: 0 !important;
    }

        .p-van-ban .heading-item::before {
            display: none;
        }

    .p-van-ban .van-ban-list {
        background: #fff;
    }

    .p-van-ban .van-ban-item {
        min-height: 78px;
        padding: 9px 0 !important;
        border-bottom: 1px solid #edf3f5;
        transition: background .2s ease, transform .2s ease;
    }

        .p-van-ban .van-ban-item:last-child {
            border-bottom: 0;
        }

        .p-van-ban .van-ban-item:hover {
            background: #f4fbfc !important;
        }

        .p-van-ban .van-ban-item span {
            width: auto !important;
            min-width: 0;
            min-height: 40px;
            box-sizing: border-box;
            justify-content: flex-start !important;
            padding: 5px 13px !important;
            color: #4b6879;
            font-family: 'Inter_24pt-Regular';
            font-size: 14px;
            line-height: 1.45;
            text-align: left !important;
        }

            .p-van-ban .van-ban-item span::before {
                display: none;
            }

            .p-van-ban .van-ban-item span a {
                color: inherit;
            }

            .p-van-ban .van-ban-item span:first-child a {
                color: #176c82;
                font-family: 'Inter_24pt-SemiBold';
            }

            .p-van-ban .van-ban-item span:nth-child(2) {
                color: #ef8650;
                justify-content: center !important;
            }

            .p-van-ban .van-ban-item span:nth-child(3) {
                display: -webkit-box;
                overflow: hidden;
                -webkit-box-orient: vertical;
                -webkit-line-clamp: 2;
            }

            .p-van-ban .van-ban-item span:nth-child(4) {
                justify-content: center !important;
            }

                .p-van-ban .van-ban-item span:nth-child(4) a {
                    display: inline-flex;
                    align-items: center;
                    gap: 4px;
                    padding: 7px 9px;
                    color: #168d9d;
                    font-family: 'Inter_24pt-SemiBold';
                    font-size: 12px;
                    border-radius: 999px;
                    background: #e9f8f8;
                }

                    .p-van-ban .van-ban-item span:nth-child(4) a img {
                        width: 17px !important;
                    }

.van-ban-page .pager {
    margin-top: 16px;
}

    .van-ban-page .pager a,
    .van-ban-page .pager span {
        min-width: 32px;
        height: 32px;
        box-sizing: border-box;
        margin: 0 3px;
        padding: 0 8px;
        border-radius: 10px;
        line-height: 32px;
        text-align: center;
    }

    .van-ban-page .pager span {
        color: #fff;
        background: #168d9d;
    }

    .van-ban-page .pager a {
        color: #557786;
        background: #edf6f8;
    }

        .van-ban-page .pager a:hover {
            color: #fff;
            background: #ef8650;
        }

.van-ban-page .my-right .list-mini-banner-l,
.van-ban-page .my-right .side-link .p-side-wrap {
    border: 1px solid #e0edf3;
    border-radius: 18px;
    box-shadow: 0 10px 28px rgba(31, 86, 132, .08);
}

.van-ban-page .my-right .list-mini-banner-l {
    padding: 11px;
    background: #fff;
}

.van-ban-page .my-right .side-img {
    overflow: hidden;
    margin-bottom: 10px;
    border-radius: 12px;
}

    .van-ban-page .my-right .side-img:last-child {
        margin-bottom: 0;
    }

.van-ban-page .my-right .side-link {
    margin-top: 17px;
}

    .van-ban-page .my-right .side-link .p-side-wrap {
        background: #f8fffc;
    }

        .van-ban-page .my-right .side-link .p-side-wrap h5,
        .van-ban-page .my-right .side-thongke h4 {
            color: #15758b;
            font-family: 'Montserrat-Bold';
        }

.van-ban-page .my-right .side-thongke .result {
    color: #ef8650;
    font-family: 'Montserrat-Bold';
}

@media (max-width: 1023px) {
    .van-ban-page .detail-news-bottom {
        grid-template-columns: 1fr;
    }

    .filter-container {
        grid-template-columns: minmax(0, 1fr) minmax(190px, .7fr);
    }

    .action-group {
        grid-column: 1 / -1;
    }

    .van-ban-page .my-right {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
    }

        .van-ban-page .my-right .list-mini-banner-l,
        .van-ban-page .my-right .side-link {
            margin-top: 0;
        }
}

@media (max-width: 739px) {
    .van-ban-page {
        padding: 14px 0 34px;
    }

        .van-ban-page .detail-news-wrap {
            padding: 23px 13px !important;
            border-radius: 18px !important;
        }

        .van-ban-page .detail-news-title {
            margin-bottom: 18px !important;
            font-size: 24px !important;
        }

    .search-filter {
        padding: 15px;
        border-radius: 15px;
    }

    .filter-container {
        display: flex;
        flex-direction: column;
        align-items: stretch;
    }

    .filter-input, .filter-select, .search-filter .btn {
        height: 44px;
    }

    .action-group {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .p-van-ban {
        overflow: visible;
        border: 0 !important;
        background: transparent !important;
    }

        .p-van-ban .heading {
            display: none !important;
        }

        .p-van-ban .van-ban-list {
            display: grid;
            gap: 12px;
            background: transparent;
        }

        .p-van-ban .van-ban-item {
            display: grid !important;
            grid-template-columns: 1fr auto;
            gap: 0 8px;
            min-height: 0;
            padding: 13px !important;
            border: 1px solid #e0edf3 !important;
            border-radius: 15px;
            background: #fff;
            box-shadow: 0 5px 14px rgba(48, 102, 138, .06);
        }

            .p-van-ban .van-ban-item span {
                display: block !important;
                min-height: 0;
                padding: 4px 0 !important;
                font-size: 12px;
            }

                .p-van-ban .van-ban-item span::before {
                    display: block;
                    position: static;
                    width: auto;
                    height: auto;
                    margin: 0 0 3px;
                    color: #89a5b2;
                    content: attr(data-label);
                    font-size: 10px;
                    font-weight: 600;
                    text-transform: uppercase;
                }

                .p-van-ban .van-ban-item span:nth-child(1) {
                    grid-column: 1 / -1;
                }

                    .p-van-ban .van-ban-item span:nth-child(1)::before {
                        content: "Văn bản";
                    }

                .p-van-ban .van-ban-item span:nth-child(2) {
                    grid-column: 1;
                    justify-content: flex-start !important;
                    text-align: left !important;
                }

                    .p-van-ban .van-ban-item span:nth-child(2)::before {
                        content: "Ngày ban hành";
                    }

                .p-van-ban .van-ban-item span:nth-child(3) {
                    grid-column: 1 / -1;
                    display: block !important;
                }

                    .p-van-ban .van-ban-item span:nth-child(3)::before {
                        content: "Trích yếu";
                    }

                .p-van-ban .van-ban-item span:nth-child(4) {
                    grid-column: 2;
                    grid-row: 2;
                    justify-content: flex-end !important;
                }

                    .p-van-ban .van-ban-item span:nth-child(4)::before {
                        display: none;
                    }

                    .p-van-ban .van-ban-item span:nth-child(4) a {
                        padding: 6px 8px;
                    }

    .van-ban-page .my-right {
        display: block;
    }

        .van-ban-page .my-right .list-mini-banner-l,
        .van-ban-page .my-right .side-link {
            margin-top: 15px;
        }
}