.vx-csv-list-wrap{--vx-blue:#155eef;--vx-border:#d9e0ec;--vx-ink:#162033;--vx-muted:#667085;position:relative;color:var(--vx-ink)}
.vx-products-hero{margin:0 0 28px}.vx-products-hero h1{margin:0 0 14px;text-align:center;font-size:42px;line-height:1.15}.vx-products-intro{max-width:900px;margin:0 auto 24px;text-align:center;color:var(--vx-muted);line-height:1.7}.vx-products-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.vx-products-info-card{padding:18px;border:1px solid var(--vx-border);border-radius:12px;background:#fff}.vx-products-info-card h2{margin:0 0 8px;font-size:18px}.vx-products-info-card p{margin:0;color:var(--vx-muted);font-size:14px;line-height:1.6}
.vx-csv-list-toolbar{display:flex;align-items:center;gap:14px;margin:0 0 14px}.vx-csv-search{width:min(100%,520px);padding:12px 14px;border:1px solid var(--vx-border);border-radius:8px;font:inherit}.vx-csv-results-count{margin-left:auto;color:var(--vx-muted);font-size:14px}.vx-csv-table-scroll{overflow:auto;border:1px solid var(--vx-border);border-radius:10px}.vx-csv-table{width:100%;border-collapse:collapse;background:#fff;font-size:14px}.vx-csv-table th,.vx-csv-table td{padding:12px 14px;border-bottom:1px solid #edf0f5;text-align:left;vertical-align:middle;white-space:nowrap}.vx-csv-table th{position:relative;background:#f7f9fc;font-weight:700}.vx-csv-table th button{padding:0;border:0;background:transparent;color:inherit;font:inherit;font-weight:700;cursor:pointer}.vx-csv-table th button::after{content:' ↕';color:#98a2b3}.vx-csv-table tbody tr:last-child td{border-bottom:0}.vx-csv-product-link{color:var(--vx-blue);font-weight:600;text-decoration:none}.vx-csv-product-link:hover{text-decoration:underline}.vx-add-quote{padding:8px 10px;border:1px solid var(--vx-blue);border-radius:7px;background:#fff;color:var(--vx-blue);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.vx-add-quote:hover,.vx-add-quote.is-added{background:var(--vx-blue);color:#fff}.vx-csv-empty,.vx-csv-notice{padding:22px;border:1px solid var(--vx-border);border-radius:10px;background:#f7f9fc;color:var(--vx-muted)}
.vx-csv-pagination{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:18px 0}.vx-csv-pagination button{min-width:36px;padding:8px;border:1px solid var(--vx-border);border-radius:7px;background:#fff;color:var(--vx-ink);font:inherit;cursor:pointer}.vx-csv-pagination button:hover,.vx-csv-pagination button[aria-current="page"]{border-color:var(--vx-blue);background:var(--vx-blue);color:#fff}.vx-csv-pagination button:disabled{opacity:.45;cursor:not-allowed}
.vx-quote-toggle{position:fixed;right:22px;bottom:22px;z-index:99990;display:flex;align-items:center;gap:9px;padding:13px 15px;border:0;border-radius:999px;background:#111827;color:#fff;box-shadow:0 10px 30px rgba(0,0,0,.24);font:inherit;font-weight:700;cursor:pointer}.vx-quote-count{display:grid;place-items:center;min-width:22px;height:22px;padding:0 4px;border-radius:50%;background:#fff;color:#111827;font-size:12px}.vx-quote-dock{position:fixed;right:22px;bottom:22px;z-index:99991;width:min(420px,calc(100vw - 28px));max-height:calc(100vh - 36px);overflow:auto;padding:18px;border:1px solid var(--vx-border);border-radius:14px;background:#fff;box-shadow:0 16px 46px rgba(0,0,0,.22);opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .2s ease,transform .2s ease,visibility .2s}.vx-quote-dock.is-open{opacity:1;visibility:visible;transform:translateY(0)}.vx-quote-dock-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.vx-quote-dock-header h2{margin:0;font-size:20px}.vx-quote-close{width:32px;height:32px;border:0;border-radius:50%;background:#eef2f6;color:#344054;font-size:24px;line-height:1;cursor:pointer}.vx-quote-items{margin:16px 0;border-top:1px solid #edf0f5}.vx-quote-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid #edf0f5;font-size:14px}.vx-quote-item small{display:block;margin-top:2px;color:var(--vx-muted)}.vx-quote-remove{border:0;background:transparent;color:#b42318;font:inherit;cursor:pointer}.vx-quote-form{display:grid;gap:11px}.vx-quote-form label{display:grid;gap:5px;font-size:14px;font-weight:600}.vx-quote-form input,.vx-quote-form textarea{width:100%;box-sizing:border-box;padding:10px;border:1px solid var(--vx-border);border-radius:7px;background:#fff;color:var(--vx-ink);font:inherit;font-weight:400}.vx-quote-submit{padding:12px;border:0;border-radius:8px;background:var(--vx-blue);color:#fff;font:inherit;font-weight:700;cursor:pointer}.vx-quote-submit:disabled{opacity:.6;cursor:wait}.vx-quote-status{min-height:20px;margin:0;font-size:14px}.vx-quote-status.is-error{color:#b42318}.vx-quote-status.is-success{color:#027a48}.vx-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.vx-quote-toast{position:fixed;left:50%;bottom:28px;z-index:999999;max-width:calc(100vw - 32px);padding:14px 18px;border-radius:10px;background:#111827;color:#fff;box-shadow:0 10px 30px rgba(0,0,0,.22);font-size:14px;line-height:1.4;opacity:0;transform:translateX(-50%) translateY(20px);transition:all .25s ease}.vx-quote-toast.is-visible{opacity:1;transform:translateX(-50%) translateY(0)}
@media (max-width:767px){.vx-products-info-grid{grid-template-columns:1fr}.vx-products-hero h1{font-size:34px}.vx-csv-list-toolbar{align-items:stretch;flex-direction:column}.vx-csv-results-count{margin-left:0}.vx-csv-table th,.vx-csv-table td{padding:10px}.vx-csv-table td{white-space:normal}.vx-quote-toggle{right:14px;bottom:14px}.vx-quote-dock{right:14px;bottom:14px}}

.vx-csv-clear-search{padding:12px 16px;border:1px solid var(--vx-blue);border-radius:8px;background:#fff;color:var(--vx-blue);font:inherit;font-weight:600;white-space:nowrap;cursor:pointer}.vx-csv-clear-search:hover{background:#eff4ff}.vx-csv-clear-search:disabled{opacity:.45;cursor:not-allowed}

@media (max-width:767px){.vx-csv-list-toolbar{flex-direction:row;flex-wrap:wrap;gap:8px}.vx-csv-search{flex:1 1 0;min-width:0;width:auto}.vx-csv-clear-search{flex:0 0 auto;padding:12px 12px}.vx-csv-results-count{flex:0 0 100%;margin-left:0}}
