:root {
    --vpcr-radius: 16px;
    --vpcr-shadow: 0 20px 60px rgba(0, 0, 0, 0.18);
    --vpcr-bg: #ffffff;
    --vpcr-text: #1f2937;
    --vpcr-muted: #6b7280;
    --vpcr-primary: #6d28d9;
    --vpcr-primary-hover: #5b21b6;
    --vpcr-border: #e5e7eb;
    --vpcr-overlay: rgba(17, 24, 39, 0.55);
    --vpcr-success: #059669;
}

.vpcr-locked { overflow: hidden; }

.vpcr-modal {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: none;
    align-items: flex-end;
    justify-content: center;
    font-family: inherit;
    color: var(--vpcr-text);
}

.vpcr-modal.is-open {
    display: flex;
    animation: vpcr-fade-in 0.25s ease-out;
}

@keyframes vpcr-fade-in {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes vpcr-slide-up {
    from { transform: translateY(30px); opacity: 0; }
    to { transform: translateY(0); opacity: 1; }
}

.vpcr-modal__overlay {
    position: absolute;
    inset: 0;
    background: var(--vpcr-overlay);
    backdrop-filter: blur(2px);
}

.vpcr-modal__dialog {
    position: relative;
    background: var(--vpcr-bg);
    width: 100%;
    max-width: 720px;
    max-height: 90vh;
    border-radius: var(--vpcr-radius) var(--vpcr-radius) 0 0;
    box-shadow: var(--vpcr-shadow);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    animation: vpcr-slide-up 0.3s ease-out;
    margin: 0;
}

@media (min-width: 720px) {
    .vpcr-modal { align-items: center; }
    .vpcr-modal__dialog {
        border-radius: var(--vpcr-radius);
        margin: 20px;
        max-height: 85vh;
    }
}

.vpcr-modal__close {
    position: absolute;
    top: 12px;
    inset-inline-end: 12px;
    width: 36px;
    height: 36px;
    border: none;
    background: transparent;
    font-size: 26px;
    line-height: 1;
    color: var(--vpcr-muted);
    cursor: pointer;
    border-radius: 50%;
    transition: background 0.15s, color 0.15s;
    z-index: 2;
}

.vpcr-modal__close:hover,
.vpcr-modal__close:focus {
    background: #f3f4f6;
    color: var(--vpcr-text);
    outline: none;
}

.vpcr-modal__title {
    font-size: 17px;
    font-weight: 700;
    margin: 0;
    padding: 20px 56px 12px 20px;
    color: var(--vpcr-text);
    line-height: 1.5;
}

.vpcr-modal__body {
    padding: 0 20px;
    overflow-y: auto;
    flex: 1;
    -webkit-overflow-scrolling: touch;
}

.vpcr-modal__loading {
    text-align: center;
    padding: 40px 20px;
    color: var(--vpcr-muted);
    font-size: 14px;
}

.vpcr-modal__footer {
    display: flex;
    gap: 10px;
    padding: 16px 20px;
    border-top: 1px solid var(--vpcr-border);
    background: #fafafa;
}

.vpcr-single-item .vpcr-modal__dialog {
    max-width: 480px;
    direction: rtl;
}

.vpcr-single-item .vpcr-modal__title {
    padding: 24px 22px 10px;
}

.vpcr-single-item__text {
    margin: 0;
    padding: 0 22px 24px;
    color: var(--vpcr-text);
    font-size: 15px;
    line-height: 1.9;
}

.vpcr-single-item .vpcr-modal__footer {
    padding: 16px 22px;
}

.vpcr-single-item .vpcr-btn {
    min-height: 44px;
    line-height: 1.4;
    text-align: center;
    white-space: normal;
}

.vpcr-single-item a.vpcr-btn--primary,
.vpcr-single-item a.vpcr-btn--primary:visited {
    color: #fff !important;
}

.vpcr-single-item a.vpcr-btn--primary:hover,
.vpcr-single-item a.vpcr-btn--primary:focus {
    background: var(--vpcr-primary-hover);
    color: #fff !important;
}

@media (max-width: 400px) {
    .vpcr-single-item .vpcr-modal__footer { flex-direction: column; }
    .vpcr-single-item .vpcr-btn { width: 100%; }
}

.vpcr-products {
    list-style: none;
    margin: 0 0 10px 0;
    padding: 0;
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
}

@media (min-width: 520px) {
    .vpcr-products { grid-template-columns: repeat(2, 1fr); }
}

.vpcr-product {
    display: grid;
    grid-template-columns: 72px 1fr auto;
    gap: 12px;
    align-items: center;
    padding: 12px;
    border: 1px solid var(--vpcr-border);
    border-radius: 12px;
    background: #fff;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.vpcr-product:hover {
    border-color: #d1d5db;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}

@media (min-width: 520px) {
    .vpcr-product {
        grid-template-columns: 88px 1fr auto;
    }
}

.vpcr-product__media {
    display: block;
    width: 72px;
    height: 72px;
    border-radius: 8px;
    overflow: hidden;
    background: #f3f4f6;
    flex-shrink: 0;
}

@media (min-width: 520px) {
    .vpcr-product__media { width: 88px; height: 88px; }
}

.vpcr-product__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.vpcr-product__info { min-width: 0; }

.vpcr-product__name {
    display: block;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.45;
    color: var(--vpcr-text);
    text-decoration: none;
    margin-bottom: 6px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.vpcr-product__name:hover { color: #000; }

.vpcr-product__price {
    font-size: 14px;
    font-weight: 700;
    color: var(--vpcr-text);
    line-height: 1.4;
}

.vpcr-product__price del {
    color: var(--vpcr-muted);
    font-weight: 400;
    margin-inline-end: 6px;
    font-size: 12px;
}

.vpcr-product__price ins {
    text-decoration: none;
    color: var(--vpcr-success);
}

.vpcr-product__stock {
    display: inline-block;
    font-size: 11px;
    padding: 2px 8px;
    border-radius: 999px;
    background: #fef2f2;
    color: #b91c1c;
    margin-top: 4px;
}

.vpcr-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border: none;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    padding: 10px 16px;
    cursor: pointer;
    text-decoration: none;
    transition: background 0.15s, transform 0.05s;
    font-family: inherit;
    line-height: 1;
    white-space: nowrap;
}

.vpcr-btn:active { transform: scale(0.97); }

.vpcr-btn--primary {
    background: var(--vpcr-primary);
    color: #fff;
    flex: 1;
}

.vpcr-btn--primary:hover { background: var(--vpcr-primary-hover); }

/* دکمه ادامه به تسویه‌حساب در همه قالب‌ها، از جمله Woodmart، سبز و خوانا بماند. */
.vpcr-modal a.vpcr-btn--primary[data-vpcr-view-cart],
.vpcr-modal a.vpcr-btn--primary[data-vpcr-view-cart]:visited {
    background: #16a34a !important;
    color: #ffffff !important;
}

.vpcr-modal a.vpcr-btn--primary[data-vpcr-view-cart]:hover,
.vpcr-modal a.vpcr-btn--primary[data-vpcr-view-cart]:focus,
.vpcr-modal a.vpcr-btn--primary[data-vpcr-view-cart]:active {
    background: #15803d !important;
    color: #ffffff !important;
}

.vpcr-btn--secondary {
    background: #f3f4f6;
    color: var(--vpcr-text);
    flex: 1;
}

.vpcr-btn--secondary:hover { background: #e5e7eb; }

.vpcr-btn--add,
.vpcr-btn--choose,
.vpcr-btn--view {
    background: var(--vpcr-primary);
    color: #fff;
    padding: 8px 14px;
    font-size: 13px;
    min-width: 90px;
}

.vpcr-btn--add:hover,
.vpcr-btn--choose:hover,
.vpcr-btn--view:hover {
    background: var(--vpcr-primary-hover);
}

.vpcr-btn--add.is-added {
    background: var(--vpcr-success);
    cursor: default;
}

.vpcr-btn--add.is-loading { opacity: 0.6; cursor: wait; }

.vpcr-btn__spinner {
    display: none;
    width: 12px;
    height: 12px;
    border: 2px solid rgba(255,255,255,0.4);
    border-top-color: #fff;
    border-radius: 50%;
    animation: vpcr-spin 0.7s linear infinite;
}

.vpcr-btn--add.is-loading .vpcr-btn__label { display: none; }
.vpcr-btn--add.is-loading .vpcr-btn__spinner { display: inline-block; }

@keyframes vpcr-spin { to { transform: rotate(360deg); } }

.vpcr-btn:focus-visible,
.vpcr-modal__close:focus-visible,
.vpcr-product__name:focus-visible {
    outline: 2px solid var(--vpcr-primary);
    outline-offset: 2px;
}

/* Checkout smart recommendations */
.vpcr-checkout {
    margin: 22px 0;
    padding: 20px;
    border: 1px solid #e8e2f5;
    border-radius: 18px;
    background: linear-gradient(145deg, #fff 0%, #faf8ff 100%);
    box-shadow: 0 10px 30px rgba(73, 45, 126, .08);
    direction: rtl;
}
.vpcr-checkout__head { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; }
.vpcr-checkout__icon {
    display: grid; place-items: center; flex: 0 0 42px; height: 42px;
    border-radius: 13px; color: #fff; font-size: 20px;
    background: linear-gradient(135deg, var(--vpcr-primary), #8b5cf6);
    box-shadow: 0 7px 18px rgba(97, 61, 160, .25);
}
.vpcr-checkout__head h3 { margin: 0 0 3px; font-size: 17px; color: var(--vpcr-text); }
.vpcr-checkout__head p { margin: 0; font-size: 12px; color: #777; }
.vpcr-checkout__loading { padding: 14px; text-align: center; color: #777; }
.vpcr-products--checkout { display: grid; grid-template-columns: 1fr; gap: 10px; margin: 0; padding: 0; }
.vpcr-products--checkout .vpcr-product {
    border: 1px solid #eee9f7; border-radius: 14px; background: #fff;
    box-shadow: 0 4px 14px rgba(0,0,0,.035);
}
.vpcr-products--checkout .vpcr-product:hover { border-color: #d8caef; transform: translateY(-1px); }

@media (max-width: 600px) {
    .vpcr-checkout { margin: 16px -4px; padding: 15px; border-radius: 16px; }
    .vpcr-checkout__head h3 { font-size: 15px; }
    .vpcr-products--checkout .vpcr-product { grid-template-columns: 74px 1fr; }
    .vpcr-products--checkout .vpcr-product__action { grid-column: 1 / -1; }
    .vpcr-products--checkout .vpcr-btn { width: 100%; min-height: 42px; }
}

/* 2.7 customer insight survey */
.vpcr-survey{position:fixed;z-index:99998;right:18px;bottom:18px;width:min(390px,calc(100vw - 24px));background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:18px;box-shadow:0 14px 45px rgba(0,0,0,.16);font-family:inherit}.vpcr-survey__close{position:absolute;left:10px;top:8px;border:0;background:transparent;font-size:25px;cursor:pointer}.vpcr-survey__q{font-weight:600;margin:14px 0 8px}.vpcr-survey__input{box-sizing:border-box;width:100%;border:1px solid #d1d5db;border-radius:10px;padding:11px;font-family:inherit}.vpcr-survey__actions{display:flex;gap:8px;margin-top:10px}.vpcr-survey__result{margin-top:10px}.vpcr-survey__result .vpcr-product{margin-top:10px}@media(max-width:600px){.vpcr-survey{right:12px;bottom:12px}}

/* 2.8 mobile-first customer insight / review bottom sheet */
@media(max-width:600px){
 .vpcr-survey{right:0;left:0;bottom:0;width:100%;max-height:85vh;overflow-y:auto;box-sizing:border-box;border-radius:22px 22px 0 0;padding:22px 18px calc(18px + env(safe-area-inset-bottom));transform:translateY(105%);transition:transform .24s ease;box-shadow:0 -12px 40px rgba(0,0,0,.18)}
 .vpcr-survey.is-open{transform:translateY(0)}
 .vpcr-survey__actions{position:sticky;bottom:0;background:#fff;padding-top:8px;padding-bottom:2px}
 .vpcr-survey__actions .vpcr-btn{min-height:46px}
}
.vpcr-review__product{display:flex;align-items:center;gap:10px;margin:14px 0;padding:10px;background:#fafafa;border-radius:12px}.vpcr-review__product img{width:54px;height:54px;object-fit:contain;border-radius:9px;background:#fff}.vpcr-review__product span{font-weight:600}.vpcr-review__label{margin:10px 0 5px}.vpcr-review__stars{display:flex;direction:ltr;justify-content:flex-end;gap:4px}.vpcr-review__stars button{border:0;background:transparent;font-size:30px;line-height:1;color:#d1d5db;cursor:pointer;padding:4px}.vpcr-review__stars button.is-on{color:#f59e0b}.vpcr-review__low p{margin:12px 0 7px}.vpcr-review__reasons{display:flex;flex-wrap:wrap;gap:6px}.vpcr-review__reasons button{border:1px solid #ddd;background:#fff;border-radius:999px;padding:7px 10px;cursor:pointer}.vpcr-review__reasons button.is-selected{border-color:#6d28d9;background:#f5f3ff}.vpcr-review__text{box-sizing:border-box;width:100%;margin-top:12px;border:1px solid #d1d5db;border-radius:10px;padding:10px;font-family:inherit;resize:vertical}.vpcr-review__thanks{margin-top:10px;padding:10px;border-radius:10px;background:#f0fdf4;font-weight:600}

/* 2.8.1 purchase experience feedback */
.vpcr-pf__intro{margin:8px 0 14px;color:#6b7280;font-size:13px;line-height:1.8}.vpcr-pf__field{display:block;margin-top:14px}.vpcr-pf__field>span{display:block;font-weight:600;margin-bottom:7px}.vpcr-pf__field small{font-weight:400;color:#6b7280}.vpcr-pf__field textarea{box-sizing:border-box;width:100%;border:1px solid #d1d5db;border-radius:10px;padding:11px;font-family:inherit;resize:vertical}.vpcr-pf__problem{margin-top:12px}.vpcr-purchase-feedback .vpcr-review__stars{margin:10px 0 14px}

/* 2.8.2 typing hotfix — keep survey field interactive on mobile/themes. */
.vpcr-survey__input-label{display:block;margin:10px 0 6px;font-weight:600}
.vpcr-survey__hint{display:block;margin-top:6px;color:#6b7280;font-size:12px;line-height:1.7}
.vpcr-survey__input{display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;position:relative!important;z-index:2!important;min-height:48px!important;font-size:16px!important;line-height:1.5!important;background:#fff!important;color:#111827!important;-webkit-user-select:text!important;user-select:text!important;touch-action:manipulation!important}
.vpcr-survey__input:focus{outline:2px solid #7c3aed!important;outline-offset:1px;border-color:#7c3aed!important}
@media(max-width:600px){.vpcr-survey{right:0!important;bottom:0!important}.vpcr-survey__input{font-size:16px!important}}

.vpcr-cart-panel[hidden]{display:none!important}.vpcr-cart-panel{clear:both;margin:0 0 20px}.vpcr-survey__choices{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.vpcr-survey__choices button{border:1px solid #d8caef;border-radius:999px;background:#faf8ff;padding:7px 12px;cursor:pointer;color:#35245b}.vpcr-survey__choices button:focus-visible{outline:2px solid #6d28d9}
/* Cart recommendations sit above purchased items as a distinct compact panel. */
.vpcr-cart-panel .vpcr-products--checkout{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.vpcr-cart-panel .vpcr-product{display:flex;flex-direction:column;min-width:0;border:1px solid #eee9f7;border-radius:14px;background:#fff;padding:10px}
.vpcr-cart-panel .vpcr-product__media img{width:100%;height:110px;object-fit:contain}
.vpcr-cart-panel .vpcr-product__action{margin-top:auto}
.vpcr-cart-panel .vpcr-btn{width:100%}
@media(max-width:900px){.vpcr-cart-panel .vpcr-products--checkout{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.vpcr-cart-panel .vpcr-products--checkout{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px}.vpcr-cart-panel .vpcr-product{flex:0 0 76%;scroll-snap-align:start}.vpcr-cart-panel .vpcr-product__media img{height:120px}}
/* Approved checkout gate design, 2.9.7. Scope deliberately excludes other modules. */
#vpcr-modal.vpcr-gate-design{--vpcr-primary:#7B22B4;--vpcr-text:#24163D;--vpcr-muted:#655B73;--vpcr-border:#EDE2FF;direction:rtl}
#vpcr-modal .vpcr-modal__dialog{max-width:980px;max-height:90dvh;border-radius:24px;padding:24px;gap:0;background:#fff}
#vpcr-modal .vpcr-modal__close{inset-inline-end:16px;top:16px;width:44px;height:44px;background:#F8F5FF;color:#655B73;font-size:28px}
#vpcr-modal .vpcr-gate-handle{display:none}
#vpcr-modal .vpcr-gate-heading{flex-shrink:0;text-align:center;padding:4px 40px 20px}
#vpcr-modal .vpcr-gate-icon{display:block;width:44px;height:44px;margin:0 auto 12px;color:#7B22B4;fill:none}
#vpcr-modal .vpcr-gate-icon path{fill:none;stroke:currentColor}
#vpcr-modal .vpcr-gate-title{padding:0;margin:0 0 8px;font-size:26px;line-height:1.6;color:#24163D}
#vpcr-modal .vpcr-gate-description{font-size:14px;line-height:1.9;margin:0 0 12px;color:#655B73}
#vpcr-modal .vpcr-gate-badge{display:inline-block;background:#F8F5FF;color:#7B22B4;border-radius:10px;padding:5px 10px;font-size:12px}
#vpcr-modal .vpcr-modal__body{min-height:0;padding:0;overflow-y:auto;flex:1 1 auto}
#vpcr-modal .vpcr-products{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0;padding:0 0 4px;direction:rtl}
#vpcr-modal .vpcr-product{display:flex;position:relative;flex-direction:column;align-items:stretch;gap:10px;min-width:0;padding:12px 10px;border:1px solid #EDE2FF;border-radius:14px;background:white;text-align:center}
#vpcr-modal .vpcr-product__media{display:flex;align-items:center;justify-content:center;height:138px;width:auto;background:#fff}
#vpcr-modal .vpcr-product__media img{width:100%;height:100%;max-height:138px;object-fit:contain;border-radius:0}
#vpcr-modal .vpcr-product__info{display:flex;flex-direction:column;gap:8px;flex:1}
#vpcr-modal .vpcr-product__name{display:block;font-size:13px;line-height:1.8;min-height:47px;color:#24163D;overflow-wrap:anywhere}
#vpcr-modal .vpcr-product__price{display:flex;flex-direction:column;gap:2px;align-items:center;justify-content:flex-end;margin-top:auto;min-height:50px;font-size:14px;font-weight:700;color:#7B22B4}
#vpcr-modal .vpcr-product__price del{display:block;text-decoration:line-through;color:#8C8198;font-size:11px;font-weight:400}
#vpcr-modal .vpcr-product__price ins{display:block;text-decoration:none;color:#7B22B4;background:none}
#vpcr-modal .vpcr-product__discount{position:absolute;z-index:1;top:10px;inset-inline-start:10px;background:#FF5159;color:white;border-radius:10px;padding:4px 7px;font-size:12px;font-weight:700;line-height:1.5}
#vpcr-modal .vpcr-product__action{width:100%}
#vpcr-modal .vpcr-product__action .vpcr-btn{width:100%;min-height:44px;padding:8px 4px;border:1px solid #7B22B4;border-radius:10px;color:#7B22B4;background:white;font-size:12px;white-space:normal;line-height:1.6}
#vpcr-modal .vpcr-product__action .vpcr-btn:hover{background:#F8F5FF}
#vpcr-modal .vpcr-product__action .vpcr-btn.is-added{background:#E8FAEF;border-color:#21A663;color:#168246}
#vpcr-modal .vpcr-modal__footer{flex-shrink:0;display:flex;flex-direction:column;padding:20px 0 0;border:0;background:white;gap:8px}
#vpcr-modal [data-vpcr-view-cart]{display:flex;align-items:center;justify-content:center;gap:16px;width:100%;min-height:48px;border-radius:12px;background:#7B22B4;color:#fff!important;font-size:16px;font-weight:700;padding:12px}
#vpcr-modal [data-vpcr-view-cart]:hover{background:#641B94}
#vpcr-modal .vpcr-gate-optional{margin:0;text-align:center;font-size:12px;line-height:1.7;color:#655B73}
#vpcr-modal .vpcr-gate-status{margin:0;text-align:center;font-size:12px;line-height:1.7;color:#168246}
#vpcr-modal .vpcr-gate-status:empty{display:none}
#vpcr-modal .vpcr-gate-scroll-controls{display:none;align-items:center;justify-content:center;gap:12px;padding-top:8px;color:#655B73;font-size:10px}
#vpcr-modal .vpcr-gate-scroll-controls button{width:44px;height:44px;min-width:44px;border:1px solid #EDE2FF;border-radius:50%;background:#F8F5FF;color:#7B22B4;padding:0;font-size:19px}
#vpcr-modal button:focus-visible,#vpcr-modal a:focus-visible{outline:3px solid #AF77D3;outline-offset:3px}
@media(max-width:900px){
#vpcr-modal .vpcr-products{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;padding-bottom:8px}
#vpcr-modal .vpcr-product{flex:0 0 165px;scroll-snap-align:start}
#vpcr-modal .vpcr-gate-scroll-controls{display:flex}
}
@media(max-width:719px){
#vpcr-modal{align-items:flex-end}
#vpcr-modal .vpcr-modal__dialog{border-radius:24px 24px 0 0;margin:0;padding:10px 14px calc(12px + env(safe-area-inset-bottom));max-height:94dvh}
#vpcr-modal .vpcr-gate-handle{display:block;flex-shrink:0;width:44px;height:5px;border-radius:8px;background:#CCC5D4;margin:0 auto 12px}
#vpcr-modal .vpcr-modal__close{top:20px;inset-inline-end:10px;width:44px;height:44px}
#vpcr-modal .vpcr-gate-heading{padding:0 25px 16px}
#vpcr-modal .vpcr-gate-icon{width:36px;height:36px;margin-bottom:8px}
#vpcr-modal .vpcr-gate-title{font-size:21px}
#vpcr-modal .vpcr-gate-description{font-size:12px;margin-bottom:8px}
#vpcr-modal .vpcr-product{flex-basis:calc((100vw - 54px)/2);max-width:180px;padding:10px 8px;gap:8px}
#vpcr-modal .vpcr-product__media{height:108px}
#vpcr-modal .vpcr-product__name{font-size:12px}
#vpcr-modal .vpcr-product__price{font-size:13px}
#vpcr-modal .vpcr-modal__footer{padding-top:12px}
}
@media(prefers-reduced-motion:reduce){#vpcr-modal,#vpcr-modal .vpcr-modal__dialog{animation:none}}

/* 2.9.9: styles travel with the plugin, including the Elementor header. */
#vpcr-modal .vpcr-modal__footer a.vpcr-btn--primary{background:#7B22B4!important;color:#fff!important}
#vpcr-modal .vpcr-modal__footer a.vpcr-btn--primary:hover{background:#641B94!important}
#vpcr-modal .vpcr-gate-heading .e-flexbox-base{display:flex;flex-direction:column;align-items:center;gap:10px;padding:0;text-align:center}
#vpcr-modal .vpcr-gate-heading .e-heading-base{display:block;font-size:26px;font-weight:700;line-height:1.6;color:#24163D;margin:0}
#vpcr-modal .vpcr-gate-heading p.e-paragraph-base{display:block;font-size:14px;line-height:1.9;color:#655B73;margin:0}
#vpcr-modal .vpcr-gate-heading span.e-paragraph-base{display:inline-block;background:#F8F5FF;color:#7B22B4;border-radius:10px;padding:5px 10px;font-size:12px;line-height:1.7}
#vpcr-modal .vpcr-products{grid-template-columns:repeat(var(--vpcr-columns,5),minmax(0,1fr))}
#vpcr-modal .vpcr-product__reason{font-size:10px;line-height:1.8;color:#655B73}
#vpcr-modal .vpcr-product__price{font-size:16px}
.vpcr-survey[hidden]{display:none!important}
.vpcr-survey{max-height:80dvh;overflow-y:auto}
@media(max-width:719px){
#vpcr-modal .vpcr-gate-heading .e-heading-base{font-size:21px}
#vpcr-modal .vpcr-gate-heading p.e-paragraph-base{font-size:12px}
#vpcr-modal .vpcr-product{flex-basis:calc((100vw - 68px)/2);max-width:180px}
#vpcr-modal .vpcr-product__price{font-size:14px}
#vpcr-modal .vpcr-modal__footer{position:sticky;bottom:0;background:white;z-index:2}
}

#vpcr-modal .vpcr-gate-status.is-error{color:#b42318}

.vpcr-manual-trigger{position:fixed;bottom:20px;right:18px;z-index:90;border:1px solid #7B22B4;background:#fff;color:#7B22B4;padding:10px 14px;border-radius:12px;font:inherit;font-size:13px;box-shadow:0 4px 16px #24163d12}
.vpcr-inline-host{clear:both;max-width:680px;margin:24px auto;padding:20px;border:1px solid #EDE2FF;border-radius:16px;background:#FAF8FF;direction:rtl}
.vpcr-inline-host[hidden]{display:none!important}
.vpcr-inline-form.vpcr-survey{position:relative!important;bottom:auto!important;right:auto!important;width:100%!important;max-width:none;max-height:none;border:0;box-shadow:none;background:transparent;padding:24px 0 0;overflow:visible;z-index:auto}
.vpcr-inline-form .vpcr-survey__close{top:0}
.vpcr-inline-form .vpcr-pf__field{margin-top:14px}
.vpcr-received{display:block;margin:14px 0;font-size:13px}
.vpcr-gift-trigger{bottom:72px}
#vpcr-gift{position:fixed;inset:0;z-index:999999;background:#24163d88;display:flex;align-items:center;justify-content:center;padding:16px;direction:rtl}
#vpcr-gift[hidden]{display:none!important}
.vpcr-gift-card{position:relative;width:min(520px,100%);max-height:90dvh;overflow:auto;background:#fff;border-radius:22px;box-shadow:0 20px 80px #24163d40}
.vpcr-gift-banner{display:block;width:100%;height:auto;border-radius:22px 22px 0 0}
.vpcr-gift-close{position:absolute;left:10px;top:10px;width:44px;height:44px;border:0;border-radius:50%;font-size:28px;background:#fff;color:#24163D;z-index:1}
.vpcr-gift-content{padding:20px}.vpcr-gift-content label{display:block;margin-bottom:16px}.vpcr-gift-content input{width:100%;font:inherit;font-size:16px;margin-top:8px;padding:12px;border:1px solid #EDE2FF;border-radius:10px}.vpcr-gift-submit{background:#7B22B4;color:#fff;width:100%;border:0;border-radius:12px;padding:12px;font:inherit}.vpcr-gift-code{font-size:20px;font-weight:bold;direction:ltr;user-select:all;padding:12px;background:#F8F5FF;display:block;text-align:center}
@media(max-width:600px){.vpcr-manual-trigger{right:12px;bottom:76px;max-width:calc(100vw - 24px)}.vpcr-gift-trigger{bottom:128px}#vpcr-gift{align-items:flex-end;padding:0}.vpcr-gift-card{width:100%;border-radius:22px 22px 0 0}.vpcr-gift-content{padding-bottom:calc(20px + env(safe-area-inset-bottom))}}

.vpcr-manual-trigger:not(.vpcr-gift-trigger){position:relative!important;bottom:auto!important;right:auto!important;margin:16px 0;display:block;z-index:auto;box-shadow:none}
.vpcr-manual-trigger[hidden]{display:none!important}

/* Keep gift controls visible under Woodmart button overrides. */
#vpcr-gift .vpcr-gift-close{position:absolute!important;left:10px!important;right:auto!important;top:10px!important;display:grid!important;place-items:center;width:44px!important;height:44px!important;min-height:44px!important;margin:0!important;padding:0!important;background:#fff!important;color:#24163D!important;font-size:28px!important;line-height:1!important;border:0!important;border-radius:50%!important}
#vpcr-gift .vpcr-gift-submit{background:#7B22B4!important;color:#fff!important;border:0!important;border-radius:12px!important;font-size:15px!important;min-height:48px;padding:12px!important;width:100%!important}
#vpcr-gift .vpcr-gift-submit:disabled{opacity:.65;cursor:wait}

/* 2.9.12 - scoped single-product reminder, Vernisa house palette. */
#vpcr-single-item-modal{color:#24163D}
#vpcr-single-item-modal .vpcr-modal__dialog{width:calc(100% - 32px);max-width:460px;border-radius:24px;background:#FFFFFF;border:1px solid #EDE2FF;box-shadow:0 20px 60px #24163D26;padding:28px 24px 20px;overflow-y:auto}
#vpcr-single-item-modal .vpcr-single-item__icon{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 20px;background:#F8F5FF;border:1px solid #EDE2FF;border-radius:24px;color:#7B22B4}
#vpcr-single-item-modal .vpcr-single-item__close{position:absolute;inset-inline-end:12px;top:12px;display:grid;place-items:center;width:44px;height:44px;min-height:44px;padding:0;margin:0;border:0;border-radius:12px;background:#F8F5FF;color:#24163D;font:inherit;font-size:26px;line-height:1}
#vpcr-single-item-modal .vpcr-modal__title{padding:0;margin:0 0 16px;text-align:center;color:#24163D;font-size:22px;font-weight:700;line-height:1.4}
#vpcr-single-item-modal .vpcr-single-item__text{padding:0;margin:0;color:#655B73;font-size:14px;line-height:2;text-align:right}
#vpcr-single-item-modal .vpcr-modal__footer{background:#FFFFFF;border:0;padding:0;margin-top:24px;display:flex;flex-direction:column;gap:12px}
#vpcr-single-item-modal .vpcr-btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;margin:0;padding:12px 16px;border-radius:12px;font:inherit;font-size:14px;font-weight:700;text-decoration:none}
#vpcr-single-item-modal .vpcr-btn--primary{background:#7B22B4!important;color:#FFFFFF!important;border:1px solid #7B22B4}
#vpcr-single-item-modal .vpcr-btn--secondary{background:#F8F5FF!important;color:#24163D!important;border:1px solid #EDE2FF}
#vpcr-single-item-modal button:focus-visible,#vpcr-single-item-modal a:focus-visible{outline:2px solid #7B22B4;outline-offset:3px}
@media(max-width:719px){#vpcr-single-item-modal{align-items:flex-end}#vpcr-single-item-modal .vpcr-modal__dialog{margin:0 0 max(12px,env(safe-area-inset-bottom));padding:28px 20px 20px;max-height:calc(100dvh - 32px)}#vpcr-single-item-modal .vpcr-modal__title{font-size:20px}}
@media(prefers-reduced-motion:reduce){#vpcr-single-item-modal,#vpcr-single-item-modal .vpcr-modal__dialog{animation:none}}

/* 2.9.16: concise basket advice and persistent feedback above mobile navigation. */
.vpcr-basket-note{margin:10px 16px;padding:10px 12px;background:#f3eef9;border-radius:10px;font-size:13px;line-height:1.9;color:#472364}
.vpcr-cart-status{font-size:13px;color:#187544;min-height:1.5em;margin:0 12px}
.vpcr-gate-design .vpcr-modal__footer{position:sticky;bottom:0;background:#fff;padding-bottom:max(12px,env(safe-area-inset-bottom));z-index:2}
.vpcr-gate-design .vpcr-modal__dialog{display:flex;flex-direction:column}
.vpcr-gate-design .vpcr-modal__body{min-height:0;overflow:auto}
@media(prefers-reduced-motion:reduce){.vpcr-modal *, .vpcr-cart-panel *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
