
html body .qi-kn {
    --kn-mau: var(--m-primary, var(--color-md, var(--mau-md, #1a5fb4)));
    --kn-chu: #1d2633;
    --kn-phu: #5b6675;
    --kn-vien: #dfe3ea;
    --kn-nen: #f5f7fa;
    --kn-nhat: color-mix(in srgb, var(--kn-mau) 8%, #fff);
    color: var(--kn-chu);
    font-size: 15px;
    line-height: 1.55;
    padding: 6px 2px 10px;
}
html body .qi-kn *, html body .qi-kn *::before, html body .qi-kn *::after { box-sizing: border-box; }

html body .qi-kn .qi-kn-dau {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-between;
    gap: 10px 20px;
    margin: 2px 0 16px;
}
html body .qi-kn .qi-kn-dau-chu { flex: 1 1 420px; min-width: 0; }
html body .qi-kn .qi-kn-nhan {
    display: block;
    margin-bottom: 2px;
    color: var(--kn-mau);
    font-size: 11.5px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
}
html body .qi-kn h1.qi-kn-tieude {
    margin: 0 0 6px;
    padding: 0;
    border: 0;
    background: none;
    color: var(--kn-mau) !important;
    font-size: 26px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
}
html body .qi-kn .qi-kn-mota { margin: 0; max-width: 680px; color: var(--kn-phu); font-size: 14.5px; }
html body .qi-kn .qi-kn-xemds {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 40px;
    padding: 0 16px;
    border: 1px solid var(--kn-mau);
    border-radius: 999px;
    background: #fff;
    color: var(--kn-mau) !important;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none !important;
    white-space: nowrap;
}
html body .qi-kn .qi-kn-xemds:hover { background: var(--kn-nhat); }

html body .qi-kn .qi-kn-luoi { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 22px; align-items: start; }
html body .qi-kn .qi-kn-chinh { min-width: 0; }

html body .qi-kn .qi-kn-baomat,
html body .qi-kn .qi-kn-kq {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 14px;
    padding: 12px 14px;
    border-radius: 12px;
    font-size: 14px;
    line-height: 1.5;
}
html body .qi-kn .qi-kn-baomat svg, html body .qi-kn .qi-kn-kq svg { flex: none; margin-top: 1px; }
html body .qi-kn .qi-kn-baomat { border: 1px solid var(--kn-vien); background: var(--kn-nen); color: var(--kn-chu); }
html body .qi-kn .qi-kn-baomat svg { color: #12804a; }
html body .qi-kn .qi-kn-kq b { display: block; }
html body .qi-kn .qi-kn-kq--ok { border: 1px solid #abefc6; background: #ecfdf3; color: #05603a; }
html body .qi-kn .qi-kn-kq--ok a { color: #05603a !important; text-decoration: underline; font-weight: 600; }
html body .qi-kn .qi-kn-kq--loi { border: 1px solid #fecdca; background: #fef3f2; color: #b42318; }

html body .qi-kn form.qi-kn-form {
    margin: 0;
    padding: 20px 22px 18px;
    border: 1px solid var(--kn-vien);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(16, 24, 40, .04), 0 6px 18px rgba(16, 24, 40, .06);
}
html body .qi-kn fieldset.qi-kn-nhom { min-width: 0; margin: 0 0 18px; padding: 0; border: 0; }
html body .qi-kn fieldset.qi-kn-nhom + fieldset.qi-kn-nhom { padding-top: 16px; border-top: 1px dashed var(--kn-vien); }
html body .qi-kn fieldset.qi-kn-nhom > legend {
    float: none;
    width: auto;
    margin: 0 0 10px;
    padding: 0;
    border: 0;
    color: var(--kn-mau);
    font-size: 12.5px;
    font-weight: 700;
    letter-spacing: .06em;
    line-height: 1.3;
    text-transform: uppercase;
}
html body .qi-kn .qi-kn-hai { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 16px; }
html body .qi-kn .qi-kn-nhom > .qi-kn-o + .qi-kn-o { margin-top: 12px; }

html body .qi-kn label.qi-kn-o { display: flex; flex-direction: column; gap: 5px; min-width: 0; margin: 0; font-weight: 400; }
html body .qi-kn label.qi-kn-o > span { display: flex; align-items: baseline; gap: 3px; color: var(--kn-chu); font-size: 14px; font-weight: 600; }
html body .qi-kn .qi-kn-bb { color: #d92d20; font-weight: 700; }
html body .qi-kn .qi-kn-dem { margin-left: auto; color: var(--kn-phu); font-size: 12px; font-weight: 400; font-variant-numeric: tabular-nums; }

html body .qi-kn label.qi-kn-o input,
html body .qi-kn label.qi-kn-o select,
html body .qi-kn label.qi-kn-o textarea,
html body .qi-kn .qi-mbv .qi-mbv__o {
    width: 100% !important;
    height: 44px !important;
    margin: 0;
    padding: 0 14px !important;
    border: 1px solid var(--kn-vien) !important;
    border-radius: 10px !important;
    background-color: var(--kn-nen) !important;
    color: var(--kn-chu) !important;
    font-size: 15px !important;
    line-height: 1.4;
    box-shadow: none !important;
    transition: border-color .15s, background-color .15s, box-shadow .15s;
}
html body .qi-kn label.qi-kn-o select { padding-right: 34px !important; }
html body .qi-kn label.qi-kn-o input:disabled { background-color: #eef1f5 !important; color: var(--kn-chu) !important; opacity: 1; -webkit-text-fill-color: var(--kn-chu); font-weight: 600; }
html body .qi-kn label.qi-kn-o textarea { height: auto !important; min-height: 168px; padding: 11px 14px !important; resize: vertical; }
html body .qi-kn label.qi-kn-o input::placeholder,
html body .qi-kn label.qi-kn-o textarea::placeholder,
html body .qi-kn .qi-mbv .qi-mbv__o::placeholder { color: #98a2b3; }
html body .qi-kn label.qi-kn-o input:focus,
html body .qi-kn label.qi-kn-o select:focus,
html body .qi-kn label.qi-kn-o textarea:focus,
html body .qi-kn .qi-mbv .qi-mbv__o:focus {
    outline: 0;
    border-color: var(--kn-mau) !important;
    background-color: #fff !important;
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--kn-mau) 16%, transparent) !important;
}
html body .qi-kn label.qi-kn-o input:not(:placeholder-shown):invalid { border-color: #f04438 !important; }

html body .qi-kn .qi-mbv { margin: 0; }
html body .qi-kn .qi-mbv > label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
html body .qi-kn fieldset.qi-kn-nhom--mbv { margin-bottom: 14px; }

html body .qi-kn .qi-kn-gui {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 10px 16px;
    padding-top: 14px;
    border-top: 1px solid var(--kn-vien);
}
html body .qi-kn .qi-kn-gui p { margin: 0; color: var(--kn-phu); font-size: 13px; }
html body .qi-kn .qi-kn-nut {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    height: 46px;
    padding: 0 24px;
    border: 1px solid var(--kn-mau);
    border-radius: 12px;
    background: var(--kn-mau);
    color: #fff;
    font-size: 15.5px;
    font-weight: 700;
    cursor: pointer;
    box-shadow: 0 6px 14px color-mix(in srgb, var(--kn-mau) 28%, transparent);
    transition: filter .15s, box-shadow .15s;
}
html body .qi-kn .qi-kn-nut:hover { filter: brightness(1.08); }
html body .qi-kn .qi-kn-nut:focus-visible { outline: 2px solid var(--kn-mau); outline-offset: 2px; }

html body .qi-kn .qi-kn-phai { display: grid; gap: 16px; position: sticky; top: 12px; }
html body .qi-kn .qi-kn-hop {
    padding: 16px 18px;
    border: 1px solid var(--kn-vien);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(16, 24, 40, .04);
}
html body .qi-kn .qi-kn-hop h2 {
    margin: 0 0 12px;
    padding: 0 0 0 10px;
    border-left: 4px solid var(--kn-mau);
    color: var(--kn-mau) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-transform: uppercase;
}
html body .qi-kn ol.qi-kn-buoc { margin: 0; padding: 0; list-style: none; counter-reset: kn; display: grid; gap: 12px; }
html body .qi-kn ol.qi-kn-buoc li { position: relative; padding-left: 40px; counter-increment: kn; min-height: 28px; }
html body .qi-kn ol.qi-kn-buoc li::before {
    content: counter(kn);
    position: absolute;
    left: 0;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--kn-nhat);
    color: var(--kn-mau);
    font-size: 13px;
    font-weight: 700;
}
html body .qi-kn ol.qi-kn-buoc li:not(:last-child)::after {
    content: "";
    position: absolute;
    left: 13.5px;
    top: 32px;
    bottom: -10px;
    width: 1px;
    background: var(--kn-vien);
}
html body .qi-kn ol.qi-kn-buoc b { display: block; font-size: 14.5px; }
html body .qi-kn ol.qi-kn-buoc span { display: block; color: var(--kn-phu); font-size: 13.5px; line-height: 1.45; }
html body .qi-kn ol.qi-kn-buoc a { color: var(--kn-mau) !important; text-decoration: underline; }
html body .qi-kn .qi-kn-hop--nhac ul { margin: 0; padding-left: 18px; color: var(--kn-phu); font-size: 13.5px; line-height: 1.5; }
html body .qi-kn .qi-kn-hop--nhac li + li { margin-top: 6px; }

@media (max-width: 1099.98px) {
    html body .qi-kn .qi-kn-luoi { grid-template-columns: minmax(0, 1fr); }
    html body .qi-kn .qi-kn-phai { position: static; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
}
@media (max-width: 767.98px) {
    html body .qi-kn h1.qi-kn-tieude { font-size: 22px !important; }
    html body .qi-kn .qi-kn-xemds { width: 100%; justify-content: center; }
    html body .qi-kn form.qi-kn-form { padding: 16px 14px; border-radius: 14px; }
    html body .qi-kn .qi-kn-hai { grid-template-columns: minmax(0, 1fr); gap: 10px; }
    html body .qi-kn .qi-kn-gui { flex-direction: column-reverse; align-items: stretch; text-align: center; }
    html body .qi-kn .qi-kn-nut { width: 100%; }
}
html body .qi-kn.qi-kn--mb { padding: 10px 0 6px; }

html body .qi-kn-ds .qi-kn-dau > .qi-kn-nut { text-decoration: none !important; }
html body .qi-kn-ds [hidden] { display: none !important; }

html body .qi-kn-ds .qi-kn-so { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-bottom: 20px; }
html body .qi-kn-ds .qi-kn-o-so {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    grid-template-rows: auto auto;
    column-gap: 14px;
    align-items: center;
    padding: 16px 18px;
    border: 1px solid var(--kn-vien);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(16, 24, 40, .04);
}
html body .qi-kn-ds .qi-kn-o-ic {
    grid-row: 1 / span 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    border-radius: 12px;
    background: var(--kn-nhat);
    color: var(--kn-mau);
}
html body .qi-kn-ds .qi-kn-o-so b { font-size: 26px; font-weight: 800; line-height: 1.1; color: var(--kn-chu); font-variant-numeric: tabular-nums; }
html body .qi-kn-ds .qi-kn-o-so b small { font-size: 14px; font-weight: 600; color: #12804a; }
html body .qi-kn-ds .qi-kn-o-so > span:last-child { color: var(--kn-phu); font-size: 13.5px; line-height: 1.35; }
html body .qi-kn-ds .qi-kn-o-so--ok .qi-kn-o-ic { background: #ecfdf3; color: #12804a; }

html body .qi-kn-ds .qi-kn-loc { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 16px; margin-bottom: 14px; }
html body .qi-kn-ds .qi-kn-chip { display: flex; flex-wrap: wrap; gap: 8px; }
html body .qi-kn-ds .qi-kn-chip button {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    height: 38px;
    padding: 0 14px;
    border: 1px solid var(--kn-vien);
    border-radius: 999px;
    background: #fff;
    color: var(--kn-chu);
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
}
html body .qi-kn-ds .qi-kn-chip button b { min-width: 22px; padding: 0 6px; border-radius: 999px; background: var(--kn-nen); color: var(--kn-phu); font-size: 12px; line-height: 20px; text-align: center; }
html body .qi-kn-ds .qi-kn-chip button:hover { border-color: var(--kn-mau); color: var(--kn-mau); }
html body .qi-kn-ds .qi-kn-chip button.dang { border-color: var(--kn-mau); background: var(--kn-mau); color: #fff; }
html body .qi-kn-ds .qi-kn-chip button.dang b { background: rgba(255, 255, 255, .22); color: #fff; }
html body .qi-kn-ds .qi-kn-tim {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 0 1 320px;
    min-width: 0;
    height: 40px;
    margin: 0;
    padding: 0 12px;
    border: 1px solid var(--kn-vien);
    border-radius: 999px;
    background: var(--kn-nen);
    color: var(--kn-phu);
}
html body .qi-kn-ds .qi-kn-tim:focus-within { border-color: var(--kn-mau); background: #fff; }
html body .qi-kn-ds .qi-kn-tim input { flex: 1; min-width: 0; height: 38px; border: 0; outline: 0; background: transparent; color: var(--kn-chu); font-size: 14.5px; box-shadow: none; }

html body .qi-kn-ds ol.qi-kn-the-ds { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
html body .qi-kn-ds li.qi-kn-the {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 16px;
    margin: 0;
    padding: 16px 18px;
    border: 1px solid var(--kn-vien);
    border-left: 4px solid #f79009;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(16, 24, 40, .04);
    transition: box-shadow .15s, border-color .15s;
}
html body .qi-kn-ds li.qi-kn-the--ok { border-left-color: #12b76a; }
html body .qi-kn-ds li.qi-kn-the:hover { box-shadow: 0 6px 18px rgba(16, 24, 40, .08); }
html body .qi-kn-ds .qi-kn-khoi {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 72px;
    border-radius: 12px;
    background: #fffaeb;
    color: #b54708;
}
html body .qi-kn-ds .qi-kn-the--ok .qi-kn-khoi { background: #ecfdf3; color: #067647; }
html body .qi-kn-ds .qi-kn-khoi b { font-size: 24px; font-weight: 800; line-height: 1; }
html body .qi-kn-ds .qi-kn-khoi span { margin-top: 3px; font-size: 12px; }
html body .qi-kn-ds .qi-kn-than { min-width: 0; }
html body .qi-kn-ds .qi-kn-tt {
    display: inline-block;
    margin-bottom: 4px;
    padding: 1px 9px;
    border-radius: 999px;
    background: #fffaeb;
    color: #b54708;
    font-size: 12px;
    font-weight: 700;
}
html body .qi-kn-ds .qi-kn-the--ok .qi-kn-tt { background: #ecfdf3; color: #067647; }
html body .qi-kn-ds .qi-kn-than h3 { margin: 0 0 4px; padding: 0; font-size: 16.5px !important; font-weight: 700 !important; line-height: 1.45 !important; }
html body .qi-kn-ds .qi-kn-than h3 a { color: var(--kn-chu) !important; text-decoration: none !important; }
html body .qi-kn-ds .qi-kn-than h3 a:hover { color: var(--kn-mau) !important; }
html body .qi-kn-ds .qi-kn-meta { display: flex; flex-wrap: wrap; gap: 4px 16px; margin: 0 0 6px; color: var(--kn-phu); font-size: 13px; }
html body .qi-kn-ds .qi-kn-meta span { display: inline-flex; align-items: center; gap: 5px; }
html body .qi-kn-ds .qi-kn-nd {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    overflow: hidden;
    margin: 0 0 8px;
    color: #344054;
    font-size: 14.5px;
    line-height: 1.55;
}
html body .qi-kn-ds .qi-kn-xem { color: var(--kn-mau) !important; font-size: 14px; font-weight: 600; text-decoration: none !important; }
html body .qi-kn-ds .qi-kn-xem:hover { text-decoration: underline !important; }

html body .qi-kn-ds .qi-kn-rong {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 40px 20px;
    border: 1px dashed var(--kn-vien);
    border-radius: 16px;
    background: #fff;
    color: var(--kn-mau);
    text-align: center;
}
html body .qi-kn-ds .qi-kn-rong h2 { margin: 6px 0 0; color: var(--kn-chu) !important; font-size: 18px !important; font-weight: 700 !important; }
html body .qi-kn-ds .qi-kn-rong p { max-width: 520px; margin: 0 0 8px; color: var(--kn-phu); }
html body .qi-kn-ds .qi-kn-rong--loc { padding: 24px 16px; }
html body .qi-kn-ds .qi-kn-rong--loc p { margin: 0; }

@media (max-width: 767.98px) {
    html body .qi-kn-ds .qi-kn-dau > .qi-kn-nut { width: 100%; }
    html body .qi-kn-ds .qi-kn-so { gap: 8px; margin-bottom: 16px; }
    html body .qi-kn-ds .qi-kn-o-so { display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 10px 6px; text-align: center; }
    html body .qi-kn-ds .qi-kn-o-ic { display: none; }
    html body .qi-kn-ds .qi-kn-o-so b { font-size: 21px; }
    html body .qi-kn-ds .qi-kn-o-so b small { display: block; font-size: 12px; }
    html body .qi-kn-ds .qi-kn-o-so > span:last-child { font-size: 12px; }
    html body .qi-kn-ds .qi-kn-tim { flex: 1 1 100%; }
    html body .qi-kn-ds li.qi-kn-the { grid-template-columns: minmax(0, 1fr); gap: 8px; padding: 14px; }
    html body .qi-kn-ds .qi-kn-khoi { display: none; }
}
