:root{--kv-red:#b3261e;--kv-red-d:#8f1d17;--kv-ink:#1d2330;--kv-muted:#667085;--kv-line:#e4e7ec;--kv-bg:#f6f7f9;--kv-ok:#12805c}
.kv-btn{display:inline-block;border:1px solid transparent;border-radius:8px;padding:11px 18px;font-weight:600;font-size:15px;line-height:1.2;cursor:pointer;text-decoration:none;transition:.15s}
.kv-btn-primary{background:var(--kv-red);color:#fff}.kv-btn-primary:hover{background:var(--kv-red-d);color:#fff}
.kv-btn-line{background:#fff;color:var(--kv-ink);border-color:#c8ccd4}.kv-btn-line:hover{border-color:var(--kv-red);color:var(--kv-red)}
.kv-btn-zalo{background:#0068ff;color:#fff}.kv-btn-zalo:hover{background:#0050c4;color:#fff}
.kv-btn-small{padding:7px 12px;font-size:13px}
.kv-btn[disabled]{opacity:.6}
.kv-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.kv-quote-form label,.kv-track label{display:block;font-size:13px;font-weight:600;color:var(--kv-ink)}
.kv-quote-form input[type=text],.kv-quote-form input[type=tel],.kv-quote-form input[type=number],.kv-quote-form input[type=email],.kv-track input{width:100%;margin-top:4px;padding:10px 12px;border:1px solid #c8ccd4;border-radius:8px;font-size:15px;background:#fff}
.kv-quote-form input:focus,.kv-track input:focus{outline:2px solid #f1b5b1;border-color:var(--kv-red)}
.kv-consent{font-weight:400!important;font-size:12.5px!important;color:var(--kv-muted)!important;margin:6px 0 14px}
.kv-consent input{margin-right:6px}
.kv-msg{margin:10px 0 0;font-size:14px}.kv-msg.ok{color:var(--kv-ok)}.kv-msg.err{color:var(--kv-red)}
.kv-muted{color:var(--kv-muted);font-size:14px}
.kv-quote-box{background:#fff;border:1px solid var(--kv-line);border-radius:14px;padding:22px;box-shadow:0 6px 24px rgba(16,24,40,.06)}
.kv-quote-box h3{margin:0 0 12px}
.kv-modal{position:fixed;inset:0;background:rgba(16,24,40,.55);z-index:9999;display:flex;align-items:center;justify-content:center;padding:16px}
.kv-modal[hidden]{display:none}
.kv-modal-card{background:#fff;border-radius:14px;max-width:620px;width:100%;max-height:92vh;overflow:auto;padding:24px;position:relative}
.kv-modal-card h3{margin:0 0 4px}.kv-modal-x{position:absolute;right:12px;top:8px;border:0;background:none;font-size:30px;cursor:pointer;color:var(--kv-muted)}
body.kv-modal-open{overflow:hidden}
.kv-fab{position:fixed;right:14px;bottom:16px;z-index:900;display:flex;flex-direction:column;gap:8px;align-items:flex-end}
.kv-fab a,.kv-fab button{border:0;border-radius:999px;padding:11px 16px;font-weight:700;font-size:14px;color:#fff;text-decoration:none;box-shadow:0 4px 14px rgba(0,0,0,.25);cursor:pointer}
.kv-fab-call{background:var(--kv-red)}.kv-fab-zalo{background:#0068ff}.kv-fab-quote{background:#1d2330}
.kv-cookie{position:fixed;left:12px;bottom:12px;max-width:560px;z-index:950;background:#1d2330;color:#fff;padding:12px 14px;border-radius:12px;font-size:13px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.kv-cookie[hidden]{display:none}.kv-cookie a{color:#ffd6d3}
.kv-cta{margin:14px 0;display:flex;flex-wrap:wrap;gap:8px}
.kv-compare-check{font-size:13px;color:var(--kv-muted);display:inline-flex;gap:6px;align-items:center;cursor:pointer}
.kv-card-actions{display:flex;justify-content:space-between;align-items:center;margin-top:8px;gap:6px}
.kv-sample-note{font-size:12px;color:#9a6700;background:#fff8e1;border:1px dashed #e6c35c;padding:6px 10px;border-radius:6px;margin:10px 0}
.kv-search{position:relative;display:flex;flex:1;max-width:560px}
.kv-search input[type=search]{flex:1;padding:11px 14px;border:2px solid var(--kv-red);border-right:0;border-radius:8px 0 0 8px;font-size:15px;min-width:0;background:#fff}
.kv-search button{background:var(--kv-red);color:#fff;border:0;padding:0 20px;border-radius:0 8px 8px 0;font-weight:700;cursor:pointer}
.kv-suggest{position:absolute;left:0;right:0;top:100%;background:#fff;border:1px solid var(--kv-line);border-radius:0 0 10px 10px;box-shadow:0 12px 28px rgba(16,24,40,.18);z-index:999;overflow:hidden}
.kv-suggest[hidden]{display:none}
.kv-suggest a{display:flex;gap:10px;align-items:center;padding:8px 12px;color:var(--kv-ink);text-decoration:none;border-bottom:1px solid #f1f2f4}
.kv-suggest a:hover{background:var(--kv-bg)}.kv-suggest small{display:block;color:var(--kv-muted)}.kv-suggest img{border-radius:6px;object-fit:cover}
.kv-sg-none{padding:12px}
.kv-table-wrap{overflow-x:auto}
.kv-compare{width:100%;border-collapse:collapse;min-width:640px}.kv-compare th,.kv-compare td{border:1px solid var(--kv-line);padding:10px;vertical-align:top;text-align:left}
.kv-compare thead th{background:var(--kv-bg);position:relative;text-align:center}.kv-compare thead img{max-width:120px;height:auto;display:block;margin:0 auto 6px}
.kv-compare tbody th{background:var(--kv-bg);width:190px;font-size:13px}.kv-x{position:absolute;right:4px;top:2px;border:0;background:none;font-size:20px;cursor:pointer}
.kv-filter{background:#fff;border:1px solid var(--kv-line);border-radius:12px;padding:14px;margin:0 0 18px}
.kv-filter-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;margin-bottom:12px}
.kv-filter label{font-size:12.5px;font-weight:600;display:block}.kv-filter select,.kv-filter input{width:100%;margin-top:3px;padding:8px;border:1px solid #c8ccd4;border-radius:8px;font-size:14px;background:#fff}
.kv-filter-toggle{display:none;margin-bottom:10px}
@media(max-width:700px){.kv-filter{display:none}.kv-filter.open{display:block}.kv-filter-toggle{display:inline-block}.kv-row{grid-template-columns:1fr}.kv-fab a,.kv-fab button{padding:10px 14px}}
.kv-faq{margin:30px 0;background:#fff;border:1px solid var(--kv-line);border-radius:12px;padding:6px 20px 14px}.kv-faq h3{font-size:16px;margin:16px 0 4px}.kv-faq p{margin:0;color:#3b4252}
.kv-price-ask{color:var(--kv-red);font-weight:700}.kv-vat{color:var(--kv-muted);font-weight:400}
.kv-term-desc{margin-top:26px;color:#3b4252}
/* ưu tiên hơn màu liên kết của theme */
body .kv-btn-primary,body .kv-fab a,body .kv-fab button,body .kv-btn-zalo,body .kv-search button{color:#fff}
body .kv-btn-line{color:var(--kv-ink)}body .kv-btn-line:hover{color:var(--kv-red)}
body .kv-fab-call{background:var(--kv-red)}body .kv-fab-zalo{background:#0068ff}body .kv-fab-quote{background:#1d2330}
body .kv-cookie a{color:#ffd6d3}
.woocommerce-price-suffix.kv-vat{font-size:12px!important;display:block;font-weight:400}
.woocommerce div.product .summary .price .woocommerce-price-suffix{font-size:13px}
.kv-fab-call{max-width:260px}
body.kv-theme .kv-btn-zalo,body.kv-theme .kv-btn-primary,body.kv-theme .kv-fab a,body.kv-theme .kv-fab button{color:#fff}
body.kv-theme .kv-btn-line{color:var(--kv-ink)}body.kv-theme .kv-btn-line:hover{color:var(--kv-red)}
body.kv-theme .kv-hero .kv-btn-line{color:#fff;background:transparent;border-color:#ffffffaa}
body.kv-theme .kv-hero .kv-btn-line:hover{background:#ffffff22;color:#fff}
.kv-filter input[type=number]{background:#fff}

.kv-err{display:block;color:var(--kv-red);font-size:12.5px;font-weight:400;min-height:0;margin-top:3px}.kv-bad{border-color:var(--kv-red)!important}
.kv-quote-form select,.kv-quote-form textarea{width:100%;padding:10px;border:1px solid var(--kv-line);border-radius:8px;font:inherit;background:#fff}
.kv-qty{display:flex;gap:0}.kv-qty input{text-align:center;border-radius:0!important;width:70px!important;min-width:0}.kv-qty button{border:1px solid var(--kv-line);background:var(--kv-bg);width:38px;cursor:pointer;font-size:18px}.kv-qty button:first-child{border-radius:8px 0 0 8px}.kv-qty button:last-child{border-radius:0 8px 8px 0}
.kv-thanks{max-width:640px;margin:20px auto;text-align:center;background:var(--kv-bg);border-radius:16px;padding:30px}
.kv-bulk{background:#fff8e1;border:1px solid #e6c35c;border-radius:12px;padding:14px 16px;margin:14px 0;display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}
