/* Popup yêu cầu demo + form inline #dungthu (Index) */

#modalYeuCauDemo .modal-dialog { max-width: 560px; }
#modalYeuCauDemo .modal-content {
    border: none;
    border-radius: 16px;
    box-shadow: 0 12px 40px rgba(0,0,0,.18);
    font-family: 'Montserrat', 'Poppins', sans-serif;
}
#modalYeuCauDemo .modal-header {
    border: none;
    padding: 1.5rem 2.5rem 0.75rem;
    position: relative;
    display: block;
}
#modalYeuCauDemo .modal-title {
    width: 100%;
    box-sizing: border-box;
    text-align: center;
    color: #f26522;
    font-weight: 700;
    font-size: 1.05rem;
    letter-spacing: .06em;
    text-transform: uppercase;
    margin: 0;
    padding: 0 0.5rem;
    line-height: 1.35;
}
#modalYeuCauDemo .close-demo {
    position: absolute;
    right: 1rem;
    top: 1rem;
    z-index: 2;
    font-size: 1.5rem;
    font-weight: 300;
    color: #999;
    opacity: 1;
    line-height: 1;
}
#modalYeuCauDemo .close-demo:hover { color: #333; }
#modalYeuCauDemo .modal-body { padding: 0.5rem 1.5rem 1.25rem; }
#modalYeuCauDemo .form-demo label:not(.modal-policy-label) { font-size: 0.85rem; font-weight: 600; color: #333; margin-bottom: .35rem; }
#modalYeuCauDemo .form-demo .form-control,
#modalYeuCauDemo .form-demo select.form-control {
    border-radius: 9px;
    border: 1px solid #ececec;
    font-size: 0.9rem;
    height: auto;
    min-height: 42px;
    background: #fff;
    box-shadow: 0 1px 3px rgba(0,0,0,.06);
}
#modalYeuCauDemo .form-demo .form-group { margin-bottom: 0.85rem; }
#modalYeuCauDemo .form-demo .hp-field { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
#modalYeuCauDemo .chk-policy { font-size: 0.82rem; line-height: 1.45; color: #2c3e50; }
#modalYeuCauDemo .chk-policy a { text-decoration: none; }
#modalYeuCauDemo .text-policy-modal { color: #1565c0; font-weight: 600; }
/* Checkbox + chữ cùng hàng — bọc trong label + flex (tránh Bootstrap làm lệch) */
#modalYeuCauDemo .modal-policy-wrap { padding-left: 0; margin-bottom: 0.85rem !important; }
#modalYeuCauDemo .modal-policy-label {
    display: flex;
    align-items: flex-start;
    gap: 0.6rem;
    cursor: pointer;
    font-weight: 400;
    font-size: 0.82rem;
    color: #2c3e50;
    margin: 0;
    padding: 0;
    width: 100%;
}
#modalYeuCauDemo .modal-policy-cb {
    margin: 0 !important;
    margin-top: 0.22em !important;
    flex: 0 0 auto;
    width: 1rem !important;
    height: 1rem !important;
    position: relative !important;
    top: 0;
    left: 0;
    float: none !important;
    cursor: pointer;
}
#modalYeuCauDemo .modal-policy-text {
    flex: 1 1 auto;
    min-width: 0;
    font-weight: 400;
    padding-top: 0.02em;
}
#modalYeuCauDemo .btn-dang-ky-demo {
    width: 100%;
    border: none;
    border-radius: 10px;
    padding: 0.75rem;
    font-weight: 700;
    font-size: 1rem;
    letter-spacing: .06em;
    color: #fff;
    background: linear-gradient(to left, #0090ab, #cd9ffa);
    margin-top: 0.25rem;
    cursor: pointer;
    box-shadow: 0 2px 12px rgba(0, 144, 171, .25);
}
#modalYeuCauDemo .btn-dang-ky-demo:hover { filter: brightness(1.04); }
#modalYeuCauDemo .btn-dang-ky-demo:disabled { opacity: .65; cursor: not-allowed; filter: none; }
#modalYeuCauDemo .alert-demo-msg { font-size: 0.85rem; margin-top: 0.5rem; }
/* Trên navbar (1030), chat (9999), video (99999) */
#modalYeuCauDemo { z-index: 100000; }
body.modal-open .modal-backdrop { z-index: 99990; }
.btn-mo-yeu-cau-demo {
    outline: none;
    font-family: inherit;
    line-height: 1.25;
}

/* Popup thông báo đăng ký thành công (sau gửi form) */
#modalYeuCauThanhCong { z-index: 100001; }
#modalYeuCauThanhCong .modal-yeu-cau-tc-dialog {
    max-width: 680px;
    width: 92%;
}
#modalYeuCauThanhCong .modal-content {
    border: none;
    border-radius: 16px;
    box-shadow: 0 12px 40px rgba(0, 0, 0, .18);
    font-family: 'Montserrat', 'Poppins', sans-serif;
    position: relative;
    padding-top: 2.25rem;
}
#modalYeuCauThanhCong .modal-body {
    padding: 0.15rem 1.75rem 1rem;
}
#modalYeuCauThanhCong .yc-dang-ky-thanh-cong {
    margin-top: 0;
    max-width: none;
    width: 100%;
    padding-left: 0.25rem;
    padding-right: 0.25rem;
}
#modalYeuCauThanhCong .yc-dk-tc-two-lines {
    font-size: 0.98rem;
}
@media (min-width: 576px) {
    #modalYeuCauThanhCong .yc-dk-tc-two-lines .yc-dk-row {
        white-space: nowrap;
    }
}
#modalYeuCauThanhCong .close-yeu-cau-tc {
    position: absolute;
    right: 1rem;
    top: 0.85rem;
    z-index: 2;
    font-size: 1.5rem;
    font-weight: 300;
    color: #999;
    opacity: 1;
    line-height: 1;
    padding: 0;
    margin: 0;
    background: transparent;
    border: 0;
    cursor: pointer;
}
#modalYeuCauThanhCong .close-yeu-cau-tc:hover { color: #333; }
#modalYeuCauThanhCong .yc-msg-ok-rich {
    margin-top: 0;
}
#modalYeuCauThanhCong .btn-yeu-cau-tc-ok {
    width: 100%;
    max-width: 280px;
    margin: 0.75rem auto 0;
    display: block;
    border: none;
    border-radius: 10px;
    padding: 0.65rem 1rem;
    font-weight: 700;
    font-size: 0.95rem;
    letter-spacing: .06em;
    color: #fff;
    background: linear-gradient(to left, #0090ab, #cd9ffa);
    cursor: pointer;
    box-shadow: 0 2px 12px rgba(0, 144, 171, .25);
}
#modalYeuCauThanhCong .btn-yeu-cau-tc-ok:hover { filter: brightness(1.04); }

#dungthu .dungthu-form-card {
    background: #fff;
    border-radius: 16px;
    padding: 1.75rem 1.35rem 2rem;
    box-shadow: 0 8px 40px rgba(0, 0, 0, .12), 0 2px 12px rgba(0, 0, 0, .06);
}
@media (min-width: 768px) {
    #dungthu .dungthu-form-card { padding: 2rem 2rem 2.25rem; }
}
#dungthu .dungthu-form-title {
    font-family: 'Montserrat', 'Poppins', sans-serif;
    font-size: 1.35rem;
    font-weight: 700;
    color: #111;
    margin-bottom: 1.25rem;
    letter-spacing: -.02em;
}
#dungthu .form-dungthu-inline label { font-size: 0.85rem; font-weight: 600; color: #333; margin-bottom: .35rem; }
#dungthu .form-dungthu-inline .form-control,
#dungthu .form-dungthu-inline select.form-control {
    border-radius: 9px;
    border: 1px solid #ececec;
    font-size: 0.9rem;
    min-height: 42px;
    height: auto;
    background: #fff;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .06);
}
#dungthu .form-dungthu-inline select.form-control {
    cursor: pointer;
    padding-right: 2.25rem;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='11' viewBox='0 0 12 12'%3E%3Cpath fill='%237a7a7a' d='M6 8L1 3h10z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.7rem center;
    background-size: 11px;
}
#dungthu .form-dungthu-inline .hp-field {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}
#dungthu .form-dungthu-inline .form-group { margin-bottom: 1rem; }
#dungthu .form-dungthu-inline .form-row .form-group { margin-bottom: 1rem; }
#dungthu .chk-policy-dungthu { font-size: 0.82rem; line-height: 1.45; color: #2c3e50; }
#dungthu .chk-policy-dungthu a { text-decoration: none; }
#dungthu .text-policy-dungthu { color: #1565c0; font-weight: 600; }
#dungthu .btn-dungthu-submit {
    width: 100%;
    border: none;
    border-radius: 10px;
    padding: 0.75rem;
    font-weight: 700;
    font-size: 1rem;
    letter-spacing: .06em;
    color: #fff;
    background: linear-gradient(to left, #0090ab, #cd9ffa);
    margin-top: 0.35rem;
    cursor: pointer;
    box-shadow: 0 2px 12px rgba(0, 144, 171, .25);
}
#dungthu .btn-dungthu-submit:hover { filter: brightness(1.03); }
#dungthu .btn-dungthu-submit:disabled { opacity: .65; cursor: not-allowed; }
#dungthu .form-dungthu-inline .alert-demo-msg { font-size: 0.85rem; margin-top: 0.5rem; }

/* Chọn nhiều: giải pháp / tính năng quan tâm (checkbox cùng name giaiPhapQuanTam) */
.yc-giai-phap-checkboxes .yc-giai-phap-heading {
    font-size: 0.85rem;
    font-weight: 600;
    color: #333;
    margin-bottom: 0.1rem;
    display: block;
}
.yc-giai-phap-checkboxes .form-check {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    padding-left: 0;
    margin-bottom: 0.4rem;
    min-height: 1.35rem;
}
.yc-giai-phap-checkboxes .form-check-input {
    position: static !important;
    margin: 0 !important;
    flex: 0 0 auto;
    width: 1rem;
    height: 1rem;
    float: none !important;
    top: auto !important;
    left: auto !important;
}
.yc-giai-phap-checkboxes .form-check-label {
    font-size: 0.88rem;
    color: #333;
    font-weight: 400;
    padding-left: 0;
    line-height: 1.35;
    margin-bottom: 0;
}

/* Cho menu gợi ý không bị cắt trong modal Bootstrap */
#modalYeuCauDemo .modal-dialog,
#modalYeuCauDemo .modal-content,
#modalYeuCauDemo .modal-body {
    overflow: visible;
}

/* Gợi ý quy mô (combobox) — chỉnh cỡ ở .yc-quy-mo-panel / .yc-quy-mo-item */
.yc-quy-mo-group { overflow: visible !important; position: relative; z-index: 0; }
.yc-quy-mo-group.yc-quy-mo-open { z-index: 20; }
#modalYeuCauDemo .yc-quy-mo-group.yc-quy-mo-open { z-index: 100001; }
.yc-quy-mo-wrap { position: relative; }
.yc-quy-mo-panel {
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    margin-top: 3px;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 6px 20px rgba(0, 0, 0, .1), 0 1px 6px rgba(0, 0, 0, .05);
    border: 1px solid #e8e8e8;
    max-height: 196px;
    overflow-y: auto;
    z-index: 50;
    padding: 3px 0;
}
.yc-quy-mo-panel[hidden] { display: none !important; }
.yc-quy-mo-item {
    display: block;
    width: 100%;
    box-sizing: border-box;
    text-align: left;
    border: 0;
    background: transparent;
    cursor: pointer;
    font-family: inherit;
    font-size: 0.8125rem;
    font-weight: 600;
    color: #1a1a1a;
    padding: 0.45rem 0.7rem;
    line-height: 1.35;
    letter-spacing: .008em;
}
.yc-quy-mo-item:hover,
.yc-quy-mo-item:focus,
.yc-quy-mo-item.is-active {
    background: #f3f6f9;
    outline: none;
}

/* Thông báo sau khi gửi form đăng ký thành công */
.yc-msg-ok-rich {
    text-align: center;
    margin-top: 1rem !important;
    padding-top: 0.35rem !important;
    color: #2c2c2c;
}
.yc-dang-ky-thanh-cong {
    text-align: center;
    padding: 0.15rem 0.25rem 0;
    max-width: 26rem;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    box-sizing: border-box;
}
/* Đúng 2 câu = 2 hàng chữ (không tiêu đề riêng) */
.yc-dk-tc-two-lines {
    margin: 0;
    padding: 0;
    font-size: 0.95rem;
    font-weight: 400;
    color: #333;
    line-height: 1.5;
}
.yc-dk-tc-two-lines .yc-dk-row {
    display: block;
    width: 100%;
    box-sizing: border-box;
    margin: 0;
    padding: 0.2rem 0;
}
.yc-dk-tc-two-lines .yc-dk-row + .yc-dk-row {
    padding-top: 0.35rem;
}
/* Giữ class cũ nếu còn chỗ nào dùng tiêu đề xanh */
.yc-dk-tc-title {
    font-family: 'Montserrat', 'Poppins', sans-serif;
    font-size: 1.35rem;
    font-weight: 700;
    color: #2a6fc4;
    letter-spacing: 0.04em;
    margin: 0 0 0.85rem;
    line-height: 1.3;
}
.yc-dk-tc-body {
    font-size: 0.95rem;
    font-weight: 400;
    color: #333;
    margin: 0 0 0.55rem;
    line-height: 1.55;
}
/* Chữ "hotline" — đậm, đen; cùng cỡ chữ với số (.yc-dk-tc-hotline-lg) */
.yc-dk-tc-two-lines .yc-dk-tc-hotline-word,
.yc-dk-tc-hotline-word {
    font-weight: 800;
    color: #111;
    font-size: 1.24rem;
    line-height: 1.35;
    vertical-align: baseline;
}
.yc-dk-tc-hotline {
    color: #e65100;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
}
.yc-dk-tc-hotline.yc-dk-tc-hotline-lg {
    font-size: 1.24rem;
    font-weight: 800;
    color: #ff5722;
}
.yc-dk-tc-hotline:hover {
    color: #bf360c;
    text-decoration: underline;
}
.yc-dk-tc-hotline.yc-dk-tc-hotline-lg:hover {
    color: #7f0000;
}
.yc-dk-tc-sep {
    font-weight: 500;
    color: #666;
    font-size: 0.88em;
}
.page-dung-thu .form-dt .yc-msg-ok-rich {
    margin-top: 0.85rem !important;
}
