.vlsp-wrap{display:grid;grid-template-columns:270px 1fr;gap:0;min-height:720px;background:linear-gradient(135deg,#f7fbff 0%,#f4f7fb 45%,#fff7f2 100%);border:1px solid #e5e7eb;border-radius:24px;overflow:hidden;font-family:Inter,Arial,sans-serif;box-shadow:0 22px 60px rgba(15,23,42,.08)}.vlsp-sidebar{background:linear-gradient(180deg,#083b63 0%,#0b4c7d 65%,#07365b 100%);color:#fff;padding:26px 18px;display:flex;flex-direction:column;position:relative}.vlsp-sidebar:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 0%,rgba(255,255,255,.18),transparent 32%);pointer-events:none}.vlsp-brand{position:relative;font-size:20px;font-weight:900;margin-bottom:28px;line-height:1.15}.vlsp-brand span{display:block}.vlsp-brand small{display:block;margin-top:5px;font-size:12px;color:#c7ddf2;font-weight:600}.vlsp-sidebar nav{position:relative;display:flex;flex-direction:column;gap:9px}.vlsp-sidebar a{color:#dbeafe;text-decoration:none;padding:12px 14px;border-radius:14px;font-weight:700;transition:.18s}.vlsp-sidebar a small{display:block;font-size:11px;margin-top:3px;color:#b8d2ea;font-weight:500}.vlsp-sidebar a.active,.vlsp-sidebar a:hover{background:rgba(255,255,255,.16);color:#fff;transform:translateX(2px)}.vlsp-logout{position:relative;margin-top:auto}.vlsp-main{padding:30px;min-width:0}.vlsp-hero{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px;background:rgba(255,255,255,.82);border:1px solid rgba(226,232,240,.9);border-radius:22px;padding:22px 24px;box-shadow:0 12px 32px rgba(15,23,42,.05);backdrop-filter:blur(8px)}.vlsp-kicker{display:inline-flex;padding:5px 10px;border-radius:999px;background:#eef6ff;color:#0b4c7d;font-weight:800;font-size:12px;margin-bottom:10px}.vlsp-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.vlsp-hero h1,.vlsp-header h1{margin:0 0 6px;font-size:30px;color:#0f172a;letter-spacing:-.03em}.vlsp-hero p,.vlsp-header p{margin:0;color:#64748b;line-height:1.65}.vlsp-grid{display:grid;grid-template-columns:minmax(440px,1fr) minmax(380px,540px);gap:22px;align-items:start}.vlsp-product-grid{grid-template-columns:1fr}.vlsp-product-grid .vlsp-editor-card{max-width:980px}.vlsp-declare-box{border:1px solid #dbeafe;background:linear-gradient(135deg,#f8fbff,#fff);border-radius:18px;padding:16px;display:flex;flex-direction:column;gap:13px}.vlsp-declare-box h3{margin:0;color:#0b4c7d;font-size:18px}.vlsp-declare-box p{margin:0 0 2px}.staff-grid{grid-template-columns:minmax(480px,1fr) minmax(320px,430px)}.vlsp-narrow{max-width:860px}.vlsp-card{background:rgba(255,255,255,.96);border:1px solid #e5e7eb;border-radius:22px;box-shadow:0 14px 36px rgba(15,23,42,.06);padding:22px}.vlsp-card h2{margin:0 0 16px;font-size:21px;letter-spacing:-.02em}.vlsp-table-wrap{overflow:auto}.vlsp-table{width:100%;border-collapse:separate;border-spacing:0}.vlsp-table th,.vlsp-table td{padding:13px;border-bottom:1px solid #eef2f7;text-align:left;vertical-align:middle}.vlsp-table th{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#64748b;line-height:1.35}.vlsp-table tr:hover td{background:#fbfdff}.vlsp-thumb{width:58px;height:58px;object-fit:cover;border-radius:14px;box-shadow:0 6px 18px rgba(15,23,42,.08)}.vlsp-noimg,.vlsp-muted{color:#94a3b8;font-size:13px}.vlsp-status{display:inline-block;padding:5px 10px;border-radius:999px;background:#eef6ff;color:#0b4c7d;font-size:12px;font-weight:800}.vlsp-btn{border:1px solid #cbd5e1;background:#fff;color:#0f172a;border-radius:13px;padding:10px 14px;cursor:pointer;font-weight:800;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:.18s}.vlsp-btn:hover{background:#f8fafc;transform:translateY(-1px);box-shadow:0 8px 18px rgba(15,23,42,.08)}.vlsp-btn.primary{background:linear-gradient(135deg,#ff4500,#ff7a1a);border-color:#ff5a12;color:#fff;box-shadow:0 10px 24px rgba(255,69,0,.22)}.vlsp-btn.danger{border-color:#fecaca;color:#b91c1c;background:#fff7f7}.vlsp-btn.small{font-size:12px;padding:7px 10px;border-radius:10px}.vlsp-form{display:flex;flex-direction:column;gap:15px}.vlsp-field{display:flex;flex-direction:column;gap:7px}.vlsp-field label{font-weight:800;color:#334155;font-size:13px}.vlsp-field input,.vlsp-field select,.vlsp-field textarea{width:100%;border:1px solid #cbd5e1;border-radius:13px;padding:11px 12px;background:#fff;color:#0f172a;box-sizing:border-box;outline:none;transition:.15s}.vlsp-field input:focus,.vlsp-field select:focus,.vlsp-field textarea:focus{border-color:#0b4c7d;box-shadow:0 0 0 4px rgba(11,76,125,.1)}.vlsp-row{display:grid;grid-template-columns:1fr 1fr;gap:13px}.vlsp-checks{display:flex;flex-wrap:wrap;gap:8px 14px}.vlsp-checks label{font-weight:600}.vlsp-image-picker{display:grid;grid-template-columns:118px 1fr auto;gap:10px;align-items:center}.vlsp-preview{width:118px;height:92px;border:1px dashed #cbd5e1;border-radius:16px;background:#f8fafc;display:flex;align-items:center;justify-content:center;overflow:hidden;text-align:center;padding:6px;box-sizing:border-box}.vlsp-preview img{width:100%;height:100%;object-fit:cover}.vlsp-gallery-preview{display:flex;flex-wrap:wrap;gap:9px;min-height:42px}.vlsp-gallery-item{position:relative;display:inline-flex}.vlsp-gallery-item img{width:74px;height:74px;object-fit:cover;border-radius:14px;border:1px solid #e2e8f0}.vlsp-gallery-item button{position:absolute;top:-7px;right:-7px;width:22px;height:22px;border-radius:999px;border:0;background:#dc2626;color:#fff;cursor:pointer}.vlsp-actions{display:flex;align-items:center;gap:12px;margin-top:4px}.vlsp-form-msg.ok{color:#047857;font-weight:700}.vlsp-form-msg.error{color:#b91c1c;font-weight:700}.vlsp-login{max-width:440px;margin:60px auto;background:rgba(255,255,255,.96);border:1px solid #e5e7eb;border-radius:24px;padding:30px;box-shadow:0 18px 45px rgba(15,23,42,.1)}.vlsp-login h2{margin:0 0 6px}.vlsp-login p{color:#64748b;margin-top:0}.vlsp-login input[type=text],.vlsp-login input[type=password]{width:100%;border:1px solid #cbd5e1;border-radius:13px;padding:11px}.vlsp-login .button{background:#ff4500;border:0;color:#fff;border-radius:13px;padding:11px 16px;font-weight:800}.vlsp-alert{padding:14px 16px;border-radius:14px;background:#eef6ff;color:#0b4c7d}.vlsp-alert.error{background:#fef2f2;color:#991b1b}@media(max-width:1000px){.vlsp-wrap{grid-template-columns:1fr}.vlsp-sidebar{border-radius:0}.vlsp-grid,.staff-grid{grid-template-columns:1fr}.vlsp-main{padding:18px}.vlsp-hero,.vlsp-header{flex-direction:column;align-items:flex-start}.vlsp-image-picker{grid-template-columns:1fr}.vlsp-row{grid-template-columns:1fr}}
.vlsp-card-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px}.vlsp-card-head h2{margin:0}.vlsp-page-select{display:flex;align-items:center;gap:8px;color:#64748b;font-weight:800;font-size:13px}.vlsp-page-select select{border:1px solid #cbd5e1;border-radius:12px;background:#fff;color:#0f172a;padding:9px 30px 9px 12px;font-weight:800;min-width:98px}.vlsp-page-select select:focus{outline:none;border-color:#0b4c7d;box-shadow:0 0 0 4px rgba(11,76,125,.1)}@media(max-width:720px){.vlsp-card-head{align-items:flex-start;flex-direction:column}.vlsp-page-select{width:100%;justify-content:space-between}.vlsp-page-select select{min-width:140px}}
.vlsp-stats{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:16px;margin-bottom:22px}.vlsp-stat{background:#fff;border:1px solid #e5e7eb;border-radius:20px;padding:20px;box-shadow:0 12px 28px rgba(15,23,42,.06)}.vlsp-stat strong{display:block;font-size:34px;line-height:1;color:#0b4c7d;letter-spacing:-.04em}.vlsp-stat span{display:block;margin-top:8px;color:#64748b;font-weight:800;line-height:1.35}.vlsp-stat.warn strong{color:#ff4500}.vlsp-dashboard-grid{grid-template-columns:1fr 1fr}.vlsp-flow{margin:0;padding-left:22px;color:#334155;line-height:1.9;font-weight:700}.vlsp-tabs{display:flex;gap:10px;margin-bottom:18px;flex-wrap:wrap}.vlsp-tabs a{display:inline-flex;text-decoration:none;border:1px solid #cbd5e1;color:#0f172a;background:#fff;border-radius:999px;padding:10px 16px;font-weight:900}.vlsp-tabs a.active{background:#0b4c7d;color:#fff;border-color:#0b4c7d}.vlsp-detail-grid{grid-template-columns:minmax(520px,1fr) minmax(320px,420px)}.vlsp-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:22px}.vlsp-info-grid div{background:#f8fafc;border:1px solid #eef2f7;border-radius:14px;padding:12px}.vlsp-info-grid div.wide{grid-column:1/-1}.vlsp-info-grid span{display:block;font-size:12px;color:#64748b;font-weight:800;margin-bottom:4px}.vlsp-info-grid strong{display:block;color:#0f172a;font-size:14px;line-height:1.45;word-break:break-word}.vlsp-actions.vertical{flex-direction:column;align-items:stretch}.vlsp-export-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.vlsp-export-links h3{width:100%;margin:0 0 4px;color:#0f172a}.vlsp-quote-table input,.vlsp-quote-table select{min-width:110px}@media(max-width:1000px){.vlsp-stats,.vlsp-dashboard-grid,.vlsp-detail-grid{grid-template-columns:1fr}.vlsp-info-grid{grid-template-columns:1fr}}

.vlsp-dashboard-home{min-height:calc(100vh - 310px);display:flex;flex-direction:column}.vlsp-team-credit{margin-top:auto;padding-top:80px;text-align:center;color:#94a3b8;font-size:13px;font-weight:700;letter-spacing:.02em}


/* v1.2.4 Staff Portal isolated ERP layout: hide public theme chrome only on the Staff Portal page. */
body.vlsp-portal-page #masthead,
body.vlsp-portal-page .site-header,
body.vlsp-portal-page header.site-header,
body.vlsp-portal-page .kadence-sticky-header,
body.vlsp-portal-page .kadence-header,
body.vlsp-portal-page .main-navigation,
body.vlsp-portal-page .primary-navigation,
body.vlsp-portal-page .entry-hero,
body.vlsp-portal-page .entry-hero-container,
body.vlsp-portal-page .page-hero,
body.vlsp-portal-page .page-header,
body.vlsp-portal-page .entry-header,
body.vlsp-portal-page .site-footer,
body.vlsp-portal-page footer.site-footer,
body.vlsp-portal-page #colophon,
body.vlsp-portal-page .footer-widget-area,
body.vlsp-portal-page .site-bottom-footer-wrap,
body.vlsp-portal-page .site-middle-footer-wrap,
body.vlsp-portal-page .site-top-footer-wrap{display:none!important;}
body.vlsp-portal-page{background:#f4f7fb!important;}
body.vlsp-portal-page .site,
body.vlsp-portal-page #page,
body.vlsp-portal-page .site-main,
body.vlsp-portal-page #primary,
body.vlsp-portal-page .content-area,
body.vlsp-portal-page .content-container,
body.vlsp-portal-page .content-wrap,
body.vlsp-portal-page .entry-content-wrap,
body.vlsp-portal-page .entry-content{max-width:none!important;width:100%!important;margin:0!important;padding:0!important;}
body.vlsp-portal-page .vlsp-wrap{border-radius:0!important;border:0!important;min-height:100vh!important;box-shadow:none!important;}
body.vlsp-portal-page .vlsp-login{margin-top:80px;margin-bottom:80px;}


/* v1.2.5 Enterprise login UI upgrade. Only changes Staff Portal login appearance; form logic remains wp_login_form. */
body.vlsp-portal-page .vlsp-login-page{
    min-height:100vh;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:48px 24px;
    background:
        radial-gradient(circle at 16% 18%, rgba(11,76,125,.18), transparent 34%),
        radial-gradient(circle at 86% 16%, rgba(255,69,0,.13), transparent 30%),
        linear-gradient(135deg,#eef5fb 0%,#f8fbff 48%,#fff7f2 100%);
    box-sizing:border-box;
}
body.vlsp-portal-page .vlsp-login-panel{
    width:min(1080px,100%);
    display:grid;
    grid-template-columns:1.05fr .95fr;
    overflow:hidden;
    border-radius:34px;
    background:rgba(255,255,255,.86);
    border:1px solid rgba(203,213,225,.82);
    box-shadow:0 34px 90px rgba(15,23,42,.16);
    backdrop-filter:blur(18px);
}
body.vlsp-portal-page .vlsp-login-copy{
    position:relative;
    padding:58px 56px;
    color:#fff;
    background:
        linear-gradient(145deg,rgba(11,76,125,.97),rgba(7,44,82,.98)),
        url('');
    min-height:520px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    overflow:hidden;
}
body.vlsp-portal-page .vlsp-login-copy:before{
    content:"";
    position:absolute;
    width:360px;
    height:360px;
    right:-130px;
    top:-120px;
    border-radius:999px;
    background:rgba(255,255,255,.12);
}
body.vlsp-portal-page .vlsp-login-copy:after{
    content:"";
    position:absolute;
    width:220px;
    height:220px;
    left:-70px;
    bottom:-80px;
    border-radius:999px;
    background:rgba(255,69,0,.26);
}
body.vlsp-portal-page .vlsp-login-copy>*{position:relative;z-index:1;}
body.vlsp-portal-page .vlsp-login-badge{
    display:inline-flex;
    width:max-content;
    padding:9px 15px;
    border-radius:999px;
    background:rgba(255,255,255,.13);
    border:1px solid rgba(255,255,255,.22);
    color:#dbeafe;
    font-size:13px;
    font-weight:900;
    letter-spacing:.03em;
    margin-bottom:28px;
}
body.vlsp-portal-page .vlsp-login-copy h1{
    margin:0;
    color:#fff;
    font-size:42px;
    line-height:1.12;
    letter-spacing:-.06em;
    font-weight:950;
    white-space:nowrap;
}
body.vlsp-portal-page .vlsp-login-copy p{
    margin:20px 0 0;
    color:#c8d9ec;
    font-size:18px;
    line-height:1.75;
    max-width:520px;
}
body.vlsp-portal-page .vlsp-login-points{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:34px;
}
body.vlsp-portal-page .vlsp-login-points span{
    display:inline-flex;
    align-items:center;
    padding:10px 14px;
    border-radius:999px;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.18);
    color:#fff;
    font-size:13px;
    font-weight:850;
}
body.vlsp-portal-page .vlsp-login{
    max-width:none;
    width:100%;
    margin:0!important;
    padding:58px 54px;
    border:0;
    border-radius:0;
    box-shadow:none;
    background:rgba(255,255,255,.72);
    display:flex;
    flex-direction:column;
    justify-content:center;
    box-sizing:border-box;
}
body.vlsp-portal-page .vlsp-login h2{
    margin:0 0 30px;
    color:#0f172a;
    font-size:40px;
    line-height:1.18;
    letter-spacing:-.045em;
    font-weight:950;
}
body.vlsp-portal-page .vlsp-login label{
    color:#334155;
    font-weight:850;
    font-size:15px;
}
body.vlsp-portal-page .vlsp-login p{
    margin:0 0 20px;
}
body.vlsp-portal-page .vlsp-login input[type=text],
body.vlsp-portal-page .vlsp-login input[type=password]{
    width:100%;
    height:54px;
    border:1px solid #cbd5e1;
    border-radius:16px;
    padding:0 16px;
    background:#f8fbff;
    color:#0f172a;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
    transition:.18s;
    box-sizing:border-box;
}
body.vlsp-portal-page .vlsp-login input[type=text]:focus,
body.vlsp-portal-page .vlsp-login input[type=password]:focus{
    border-color:#0b4c7d;
    background:#fff;
    outline:0;
    box-shadow:0 0 0 5px rgba(11,76,125,.11);
}
body.vlsp-portal-page .vlsp-login .login-remember{
    display:flex;
    align-items:center;
    gap:8px;
    margin-top:4px;
}
body.vlsp-portal-page .vlsp-login .login-submit{
    margin-top:26px;
}
body.vlsp-portal-page .vlsp-login .button,
body.vlsp-portal-page .vlsp-login input[type=submit]{
    min-width:156px;
    height:52px;
    background:linear-gradient(135deg,#ff4500,#ff7a1a);
    border:0;
    color:#fff;
    border-radius:16px;
    padding:0 24px;
    font-weight:950;
    font-size:16px;
    cursor:pointer;
    box-shadow:0 16px 30px rgba(255,69,0,.24);
    transition:.18s;
}
body.vlsp-portal-page .vlsp-login .button:hover,
body.vlsp-portal-page .vlsp-login input[type=submit]:hover{
    transform:translateY(-1px);
    box-shadow:0 20px 36px rgba(255,69,0,.30);
}
@media(max-width:900px){
    body.vlsp-portal-page .vlsp-login-panel{grid-template-columns:1fr;}
    body.vlsp-portal-page .vlsp-login-copy{min-height:auto;padding:38px 32px;}
    body.vlsp-portal-page .vlsp-login-copy h1{font-size:34px;white-space:normal;}
    body.vlsp-portal-page .vlsp-login{padding:38px 32px;}
    body.vlsp-portal-page .vlsp-login h2{font-size:32px;}
}
@media(max-width:560px){
    body.vlsp-portal-page .vlsp-login-page{padding:22px 14px;align-items:flex-start;}
    body.vlsp-portal-page .vlsp-login-panel{border-radius:24px;}
    body.vlsp-portal-page .vlsp-login-copy{padding:30px 24px;}
    body.vlsp-portal-page .vlsp-login-copy h1{font-size:28px;white-space:normal;}
    body.vlsp-portal-page .vlsp-login-copy p{font-size:15px;}
    body.vlsp-portal-page .vlsp-login{padding:30px 24px;}
}

/* v1.3.0 RFQ workflow core additions: status summary + quote total. */
.vlsp-workflow-box{display:grid;gap:10px;margin:0 0 16px}
.vlsp-workflow-box p{display:flex;justify-content:space-between;gap:12px;margin:0;padding:12px 14px;border:1px solid #eef2f7;background:#f8fafc;border-radius:14px}
.vlsp-workflow-box span{color:#64748b;font-size:12px;font-weight:850}
.vlsp-workflow-box strong{color:#0f172a;font-size:14px;text-align:right}
.vlsp-quote-summary{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin:16px 0 0;padding:14px 16px;border-radius:16px;background:#f8fafc;border:1px solid #e5e7eb;color:#0f172a;font-weight:900}
.vlsp-quote-summary span{color:#64748b;font-size:13px}
.vlsp-quote-summary strong{font-size:18px;color:#0b4c7d}
.vlsp-table small{color:#64748b;font-weight:700;line-height:1.45}

.vlsp-custom-input{margin-top:8px}.vlsp-pi-print-note{color:#64748b;font-size:12px}

/* v1.4.0 compliance declaration table */
.vlsp-mode-field{max-width:520px}
.vlsp-declare-head{margin-top:18px}
.vlsp-declare-table-wrap{overflow-x:auto}
.vlsp-declare-table{min-width:980px}
.vlsp-declare-table input,
.vlsp-declare-table textarea{width:100%;min-width:92px;box-sizing:border-box}
.vlsp-declare-table textarea{resize:vertical}
.vlsp-btn.danger{background:#fee2e2;color:#991b1b;border-color:#fecaca}

/* v1.4.1 UI polish: compact action buttons and readable product declaration cards. */
/* v1.4.2: PI print links use the main B2B formal PI template. */
.vlsp-row-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:190px}.vlsp-row-actions .vlsp-btn{white-space:nowrap}.vlsp-row-actions .vlsp-btn.danger{background:#fff7f7;border-color:#fecaca;color:#b91c1c}.vlsp-row-actions .vlsp-btn.danger:hover{background:#fee2e2;box-shadow:0 8px 18px rgba(185,28,28,.08)}
.vlsp-declare-head{margin:8px 0 14px}.vlsp-declare-head h3{margin:0;font-size:26px;letter-spacing:-.03em;color:#0f172a}.vlsp-declare-cards{display:flex;flex-direction:column;gap:16px}.vlsp-declare-card{border:1px solid #e2e8f0;border-radius:20px;background:linear-gradient(135deg,#fff,#f8fbff);padding:18px;box-shadow:0 10px 24px rgba(15,23,42,.04)}.vlsp-declare-title{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid #eef2f7;padding-bottom:14px;margin-bottom:16px}.vlsp-declare-title span{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;color:#64748b}.vlsp-declare-title strong{font-size:18px;line-height:1.35;color:#334155;text-align:right;max-width:62%}.vlsp-declare-grid{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:14px}.vlsp-declare-field{display:flex;flex-direction:column;gap:7px}.vlsp-declare-field label{font-size:12px;line-height:1.35;font-weight:900;color:#64748b}.vlsp-declare-field input,.vlsp-declare-field textarea{width:100%;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:13px;background:#fff;color:#0f172a;padding:10px 11px;min-height:44px;outline:none;transition:.15s}.vlsp-declare-field textarea{min-height:86px;resize:vertical}.vlsp-declare-field input:focus,.vlsp-declare-field textarea:focus{border-color:#0b4c7d;box-shadow:0 0 0 4px rgba(11,76,125,.1)}.vlsp-readonly-value{min-height:44px;border:1px solid #e2e8f0;border-radius:13px;background:#f8fafc;color:#334155;padding:10px 11px;box-sizing:border-box;font-weight:800;display:flex;align-items:center}.vlsp-declare-field-elements,.vlsp-declare-field-remark{grid-column:span 3}.vlsp-declare-field-subtotal .vlsp-readonly-value{color:#0b4c7d;background:#eef6ff;border-color:#dbeafe}.vlsp-declare-price{font-weight:800}@media(max-width:1200px){.vlsp-declare-grid{grid-template-columns:repeat(2,minmax(180px,1fr))}.vlsp-declare-field-elements,.vlsp-declare-field-remark{grid-column:span 2}}@media(max-width:720px){.vlsp-row-actions{min-width:0;flex-direction:column;align-items:stretch}.vlsp-row-actions .vlsp-btn{width:100%}.vlsp-declare-grid{grid-template-columns:1fr}.vlsp-declare-field-elements,.vlsp-declare-field-remark{grid-column:auto}.vlsp-declare-title{flex-direction:column}.vlsp-declare-title strong{text-align:left;max-width:none}}


/* v1.4.9 RFQ/Order item thumbnail display. UI only; data structure unchanged. */
.vlsp-items-table th:first-child,
.vlsp-items-table td:first-child{min-width:260px;}
.vlsp-item-product{display:flex;align-items:center;gap:12px;min-width:230px;}
.vlsp-item-image{flex:0 0 58px;display:flex;align-items:center;justify-content:center;}
.vlsp-item-thumb{width:58px;height:58px;object-fit:cover;border-radius:12px;border:1px solid #e2e8f0;background:#f8fafc;box-shadow:0 6px 18px rgba(15,23,42,.07);}
.vlsp-item-thumb-empty{display:flex;align-items:center;justify-content:center;text-align:center;font-size:10px;line-height:1.25;color:#94a3b8;font-weight:800;}
.vlsp-item-text{min-width:0;line-height:1.35;}
.vlsp-item-text strong{display:block;color:#334155;}
.vlsp-item-text small{color:#64748b;font-weight:700;}
@media(max-width:720px){.vlsp-item-product{min-width:220px}.vlsp-item-thumb{width:50px;height:50px}.vlsp-item-image{flex-basis:50px}}
