/* XD – Form báo giá */
/* 3.0: chặn style nút của theme (độ ưu tiên 0,1,0; plugin nạp sau CSS theme). Class riêng của từng nút đặt sau dòng này. */
.vxl-form :where(button,[type=button],[type=submit],[type=reset]){font:inherit;color:inherit;cursor:pointer;border:0;background:none;margin:0;padding:0;text-transform:none;letter-spacing:normal;line-height:inherit;box-shadow:none;min-height:0;min-width:0;width:auto;height:auto;border-radius:0;text-decoration:none;text-shadow:none;-webkit-appearance:none;appearance:none}
.vxl-form-wrap{height:100%}
.vxl-form{padding:40px;display:flex;flex-direction:column;gap:16px;background:#fff;height:100%;transition:box-shadow .3s}
.vxl-form-title{margin:0;font-size:20px;font-weight:800;color:var(--vxd-ink,#14213d)}
.vxl-row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.vxl-field{display:flex;flex-direction:column;gap:6px;min-width:0}
.vxl-field label,.vxl-need legend{font-size:13px;font-weight:700;color:var(--vxd-ink,#14213d)}
.vxl-field label i{font-style:normal;color:#c42b2b}
.vxl-form .vxl-inp,.vxl-form input.vxl-inp,.vxl-form select.vxl-inp{font:inherit;box-shadow:none;height:auto;line-height:1.4;font-size:15px;width:100%;padding:13px 14px;border:1.5px solid var(--vxd-line,#e3e8f0);border-radius:10px;background:#fbfcfe;color:var(--vxd-ink,#14213d);transition:border-color .2s,background-color .2s;min-height:48px}
.vxl-form .vxl-inp:focus,.vxl-form input.vxl-inp:focus,.vxl-form select.vxl-inp:focus{outline:none;border-color:var(--vxd-blue,#1464f4);background:#fff}
.vxl-need{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;min-width:0}
.vxl-need legend{padding:0;margin-bottom:8px}
.vxl-chips{display:flex;flex-wrap:wrap;gap:8px}
.vxl-chips label{position:relative;margin:0}
.vxl-chips input{position:absolute;opacity:0;pointer-events:none}
.vxl-chips span{display:inline-flex;padding:9px 14px;border:1.5px solid var(--vxd-line,#e3e8f0);border-radius:999px;font-size:14px;font-weight:600;cursor:pointer;background:#fff;color:var(--vxd-ink,#14213d);transition:all .2s}
.vxl-chips input:checked+span{border-color:var(--vxd-blue,#1464f4);background:var(--vxd-blue-50,#eef4ff);color:var(--vxd-blue,#1464f4)}
.vxl-chips input:focus-visible+span{outline:2px solid var(--vxd-blue,#1464f4);outline-offset:2px}
.vxl-submit{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:15px;border-radius:10px;border:1.5px solid transparent;background:var(--vxd-blue,#1464f4);color:#fff;font:inherit;font-size:16px;font-weight:700;cursor:pointer;transition:background-color .2s,box-shadow .2s}
.vxl-submit:hover{background:color-mix(in srgb,var(--vxd-blue,#1464f4) 82%,#000);box-shadow:0 8px 20px rgba(20,100,244,.3)}
.vxl-submit:disabled{opacity:.7;cursor:wait}
.vxl-err{margin:0;color:#c42b2b;font-size:14px;font-weight:600}
.vxl-err:empty{display:none}
.vxl-note{margin:0;font-size:13px;color:var(--vxd-muted,#5d6b82);text-align:center}
.vxl-note a{color:var(--vxd-blue,#1464f4);font-weight:700;text-decoration:none}
.vxl-form.vxl-form .vxt-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.vxl-thanks{padding:40px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px;background:#fff;height:100%;justify-content:center}
.vxl-thanks[hidden]{display:none}
.vxl-ok{width:56px;height:56px;border-radius:50%;background:#e9f7f1;color:var(--vxd-ok,#12805c);display:grid;place-items:center}
.vxl-thanks h3{margin:0;font-size:20px;font-weight:800}
.vxl-thanks p{margin:0;color:var(--vxd-muted,#5d6b82)}
@media (max-width:820px){.vxl-form,.vxl-thanks{padding:28px 22px}}
@media (max-width:560px){.vxl-row2{grid-template-columns:minmax(0,1fr)}}
