.vps-shop-wrap{--vps-green:#087f62;--vps-green-dark:#075e4b;--vps-mint:#e9f8f3;--vps-border:#bfe9dc;--vps-text:#1c2725;--ovps-heading-bg:#173f31;--ovps-heading-text:#ffffff;--ovps-heading-sub-text:#ffffff;--ovps-heading-accent:#22c98d;--ovps-search-button-bg:#087f62;--ovps-search-button-hover-bg:#075e4b;--ovps-search-button-text:#ffffff;--ovps-search-button-hover-text:#ffffff;--ovps-search-border:#bfe9dc;--ovps-category-text:#075e4b;--ovps-category-bg:#ffffff;--ovps-category-border:#bfe9dc;--ovps-category-hover-border:#73ceb8;--ovps-accent:#087f62;--ovps-accent-dark:#075e4b;--ovps-card-bg:#ffffff;--ovps-expanded-bg:#fbfefd;--ovps-regular:#b2bdb8;--ovps-sale:#087f62;--ovps-price-size:20px;--ovps-title-weight:650;max-width:1340px;margin:0 auto;padding:28px 18px 54px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:var(--vps-text);box-sizing:border-box}.vps-shop-wrap *{box-sizing:border-box}.vps-shop-header{text-align:left;margin:0 0 14px;padding:0}.vps-heading-panel{background:var(--ovps-heading-bg);color:var(--ovps-heading-text);border-radius:9px;padding:12px 16px;display:flex;align-items:center;gap:14px;min-height:52px}.vps-heading-panel h1{display:block;color:var(--ovps-heading-text);font-size:20px;line-height:1;margin:0;font-weight:650}.vps-heading-panel .vps-eyebrow{display:block;color:var(--ovps-heading-text);border-left:3px solid var(--ovps-heading-accent);padding-left:9px;margin:0;font-size:13px;font-weight:600}.vps-heading-panel .vps-sub{display:block;color:var(--ovps-heading-sub-text);font-size:12px;margin:0 0 0 auto}.vps-eyebrow{text-transform:none;letter-spacing:0;font-size:16px;font-weight:800;color:#222;margin:0 0 6px;border-left:4px solid #22c98d;padding-left:9px}.vps-shop-header h1{display:none}.vps-sub{display:none}.vps-shop-tools{display:none}.vps-categories{display:none}.vps-shop-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 11px}.vps-shop-search-form{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.vps-category-select{height:40px;min-width:190px;border:1px solid var(--ovps-category-border);border-radius:8px;background:var(--ovps-category-bg);color:var(--ovps-category-text);padding:0 34px 0 12px;font-size:13px;font-weight:600;cursor:pointer}.vps-category-select:focus{outline:none;border-color:var(--ovps-category-hover-border);box-shadow:0 0 0 2px rgba(8,127,98,.08)}.vps-flex-list{display:flex;flex-direction:column;gap:9px}.vps-flex-card{position:relative;background:var(--ovps-card-bg);border:1px solid var(--vps-border);border-radius:9px;overflow:hidden;box-shadow:0 2px 7px rgba(0,60,45,.04)}.vps-flex-main{min-height:88px;display:grid;grid-template-columns:40px minmax(0,1fr) 165px 34px;gap:10px;align-items:center;padding:10px 12px}.vps-flex-icon{width:36px;height:36px;border-radius:8px;background:#d8f4eb;border:1px solid #9de1cf;color:#087f62;display:flex;align-items:center;justify-content:center;font-size:21px}.vps-flex-info{min-width:0}.vps-flex-title-row{display:flex;align-items:center;gap:8px;min-width:0}.vps-flex-title-row h2{font-size:16px;line-height:1.25;margin:0;font-weight:var(--ovps-title-weight);color:var(--vps-green-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vps-mini-promo{font-size:10px;padding:2px 7px;border-radius:999px;background:#fff1dd;border:1px solid #f1c37c;color:#a76400;white-space:nowrap}.vps-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:4px}.vps-tag{font-size:10px;line-height:1;padding:4px 7px;border-radius:999px;background:#eef2f0;color:#47615a;border:1px solid #dbe5e1}.vps-tag-soft{background:#eefaf6;border-color:#c5e9dd;color:#267862}.vps-tag-ok{background:#e4f8f0;border-color:#a9e1ce;color:#167c60}.vps-tag-promo{background:#fff4e5;border-color:#f0c477;color:#a15f00}.vps-config-count{font-size:12px;margin-top:4px;color:#293b36}.vps-flex-price{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:1px;white-space:nowrap}.vps-stock{font-size:10px;color:#0c8867;background:#ddf7ee;border:1px solid #b7e8d9;border-radius:999px;padding:4px 9px;font-weight:750}.vps-rate-label{font-size:11px;color:#666;margin-top:2px}.vps-flex-price strong{font-size:var(--ovps-price-size);color:var(--ovps-sale);font-weight:700;line-height:1.1}.vps-flex-price strong .woocommerce-Price-currencySymbol{font-size:.75em}.vps-price-box{display:flex;align-items:center;justify-content:flex-end;gap:6px}.vps-flex-price .vps-price-box del{font-size:12px;color:var(--ovps-regular);font-weight:400;text-decoration-thickness:1px}.vps-flex-price .vps-price-box ins{text-decoration:none;font-size:var(--ovps-price-size);color:var(--ovps-sale);font-weight:700}.vps-config-price .vps-price-box{display:flex;align-items:center;justify-content:flex-end;gap:6px}.vps-config-price .vps-price-box del{font-size:12px;color:var(--ovps-regular);font-weight:400;text-decoration-thickness:1px}.vps-config-price .vps-price-box ins{text-decoration:none;font-size:14px;color:var(--ovps-sale);font-weight:700}.vps-config-price .vps-price-box .vps-sale-badge{margin-right:1px}
.vps-sale-badge{font-size:9px;padding:3px 6px;border-radius:999px;background:#fff1dd;border:1px solid #f0c477;color:#9b5d00;font-weight:700}.vps-regular-only{text-decoration:none!important}.vps-expand{border:0;background:transparent;color:#608078;font-size:22px;cursor:pointer;text-decoration:none;padding:4px}.vps-simple-open{display:flex;align-items:center;justify-content:center}.vps-flex-config{display:none;border-top:1px solid var(--vps-border);padding:11px 12px 12px;background:var(--ovps-expanded-bg)}.vps-flex-card.is-open .vps-flex-config{display:block}.vps-flex-card.is-open .vps-expand{transform:rotate(180deg)}.vps-config-heading{font-size:11px;font-weight:750;letter-spacing:.02em;margin-bottom:7px;color:#263b35}.vps-config-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:8px;align-items:center;border:1px solid var(--vps-border);background:#f5fbf8;border-radius:7px;padding:8px 10px;margin-top:7px}.vps-config-name{font-size:12px;color:#263b35}.vps-config-price{font-size:14px;font-weight:800;color:#087f62;white-space:nowrap}.vps-config-btn{font-size:11px;padding:7px 12px;border-radius:6px;text-decoration:none;font-weight:750}.vps-config-cart{border:1px solid var(--vps-border);background:#fff;color:#29473e}.vps-config-buy{background:#087f62;color:#fff!important}.vps-promo-note{margin-top:7px;padding:7px 10px;border-radius:6px;background:#eaf8f3;color:#33836f;font-size:11px}.vps-featured{border-color:#7bd7bd}.vps-empty{padding:35px;text-align:center;border:1px solid var(--vps-border);border-radius:9px}.vps-pagination{display:flex;justify-content:center;margin-top:22px}.vps-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;margin:0 3px;border:1px solid var(--vps-border);border-radius:6px;text-decoration:none;color:var(--vps-green-dark);background:#fff}.vps-pagination .page-numbers.current,.vps-pagination .page-numbers:hover{background:var(--vps-green);border-color:var(--vps-green);color:#fff}@media(max-width:800px){.vps-flex-main{grid-template-columns:36px minmax(0,1fr) 34px;gap:8px}.vps-flex-price{grid-column:2;grid-row:2;display:grid;grid-template-columns:auto auto;align-items:center;justify-content:start;gap:7px;text-align:left}.vps-flex-price .vps-stock{grid-column:1}.vps-flex-price .vps-rate-label{grid-column:2;grid-row:1}.vps-flex-price strong{grid-column:2;grid-row:2}.vps-expand{grid-column:3;grid-row:1/3}.vps-config-row{grid-template-columns:minmax(0,1fr) auto auto}.vps-config-price{grid-column:2}.vps-config-cart,.vps-config-buy{grid-row:2}.vps-config-name{grid-column:1;grid-row:1}.vps-config-price{grid-row:1}}@media(max-width:520px){.vps-shop-wrap{padding:20px 10px 40px}.vps-flex-main{padding:9px}.vps-flex-title-row h2{font-size:14px}.vps-tag{font-size:9px;padding:3px 6px}.vps-config-row{grid-template-columns:1fr auto auto}.vps-config-btn{padding:6px 9px}}
@media(max-width:800px){.vps-heading-panel{display:block;padding:12px 14px}.vps-heading-panel h1{margin:0 0 4px}.vps-heading-panel .vps-sub{margin:0;color:rgba(255,255,255,.76)}}

/* v1.5.4 stock availability */
.vps-stock.is-out-of-stock{color:#b42318;background:#fff0ef;border-color:#f1b6b2}
.vps-config-row-out{background:#fff8f7;border-color:#f1c9c5}
.vps-config-disabled{opacity:.55;cursor:not-allowed!important;pointer-events:none}
.vps-config-btn.vps-config-out{background:#c62828;color:#fff!important;border:1px solid #c62828;cursor:not-allowed;pointer-events:none}

.vps-shop-search{margin:0}.vps-shop-search form{display:flex;align-items:center;gap:8px}
.vps-shop-search input[type="search"]{flex:1;min-width:0;height:40px;border:1px solid var(--ovps-search-border);border-radius:8px;background:#fff;color:var(--vps-text);padding:0 13px;font-size:13px;outline:none;box-shadow:none}
.vps-shop-search input[type="search"]:focus{border-color:#73ceb8;box-shadow:0 0 0 2px rgba(8,127,98,.08)}
.vps-shop-wrap .vps-shop-search button,
.vps-shop-wrap .vps-shop-search button[type="submit"],
.vps-shop-wrap .vps-shop-search input[type="submit"],
.vps-shop-wrap .vps-shop-controls .vps-shop-search button,
.vps-shop-wrap .vps-shop-controls .vps-shop-search button[type="submit"],
body .vps-shop-wrap .vps-shop-search button,
body .vps-shop-wrap .vps-shop-search button[type="submit"]{
height:40px !important;
min-height:40px !important;
line-height:40px !important;
border:1px solid var(--ovps-search-button-bg) !important;
border-radius:8px !important;
background:var(--ovps-search-button-bg) !important;
background-color:var(--ovps-search-button-bg) !important;
color:var(--ovps-search-button-text) !important;
padding:0 18px !important;
font-size:13px !important;
font-weight:650 !important;
cursor:pointer !important;
box-shadow:none !important;
text-shadow:none !important;
outline:none !important;
display:inline-flex !important;
align-items:center !important;
justify-content:center !important;
letter-spacing:0.03em !important;
}
.vps-shop-wrap .vps-shop-search button:hover,
.vps-shop-wrap .vps-shop-search button[type="submit"]:hover,
body .vps-shop-wrap .vps-shop-search button:hover,
body .vps-shop-wrap .vps-shop-search button[type="submit"]:hover{
background:var(--ovps-search-button-hover-bg) !important;
background-color:var(--ovps-search-button-hover-bg) !important;
border-color:var(--ovps-search-button-hover-bg) !important;
color:var(--ovps-search-button-hover-text) !important;
}
.vps-shop-wrap .vps-shop-search button:focus,
.vps-shop-wrap .vps-shop-search button[type="submit"]:focus,
body .vps-shop-wrap .vps-shop-search button:focus{
background:var(--ovps-search-button-bg) !important;
background-color:var(--ovps-search-button-bg) !important;
border-color:var(--ovps-search-button-bg) !important;
color:var(--ovps-search-button-text) !important;
box-shadow:0 0 0 3px rgba(8,127,98,0.25) !important;
}
.vps-search-clear{font-size:12px;color:var(--vps-green-dark);text-decoration:none;white-space:nowrap}
.vps-search-clear:hover{text-decoration:underline}
.vps-flex-main[role="button"]{cursor:pointer}
.vps-flex-main[role="button"]:focus-visible{outline:2px solid #73ceb8;outline-offset:-2px}
.vps-flex-main .vps-expand{cursor:pointer}
@media(max-width:520px){.vps-shop-search form{width:100%}.vps-shop-search input[type="search"]{height:38px}.vps-shop-search button{height:38px;padding:0 13px}}


/* v1.5.7 compact search + category dropdown */
.vps-shop-controls .vps-shop-search-form{max-width:none}
@media(max-width:800px){
  .vps-shop-controls{align-items:stretch;flex-direction:column}
  .vps-shop-search-form{width:100%;flex-wrap:wrap}
  .vps-shop-search-form input[type="search"]{flex:1 1 240px}
  .vps-category-select{flex:0 1 190px}
}
@media(max-width:520px){
  .vps-shop-search-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}
  .vps-shop-search-form input[type="search"]{grid-column:1/-1;width:100%;height:38px}
  .vps-category-select{width:100%;height:38px;min-width:0}
  .vps-shop-search button{height:38px;padding:0 13px}
}


/* v1.5.9 single-product configuration continuity + warning modal */
.ovps-config-modal{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:20px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}
.ovps-config-modal.is-open{display:flex}
.ovps-config-backdrop{position:absolute;inset:0;background:rgba(8,32,25,.58);backdrop-filter:blur(2px)}
.ovps-config-dialog{position:relative;width:min(500px,100%);background:#fff;border:1px solid #d7e8e1;border-radius:16px;padding:28px 28px 24px;box-shadow:0 24px 70px rgba(0,0,0,.22);text-align:left;animation:ovpsConfigIn .16s ease-out}
.ovps-config-icon{width:46px;height:46px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#fff6dc;color:#b26a00;font-size:23px;margin-bottom:14px}
.ovps-config-dialog h3{margin:0 0 10px;color:#173f31;font-size:22px;line-height:1.2;font-weight:750}
.ovps-config-dialog p{margin:0}
.ovps-config-selected{color:#173f31;font-size:15px;font-weight:650;line-height:1.55;margin-bottom:7px!important}
.ovps-config-warning-text{color:#60746d;font-size:13px;line-height:1.55}
.ovps-config-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}
.ovps-config-actions button{min-height:42px;border-radius:9px;padding:0 17px;font-size:13px;font-weight:700;cursor:pointer}
.ovps-config-cancel{background:#fff;color:#17664f;border:1px solid #9fcfc0}
.ovps-config-cancel:hover{background:#f2faf7}
.ovps-config-confirm{background:#087f62;color:#fff;border:1px solid #087f62}
.ovps-config-confirm:hover{background:#075e4b;border-color:#075e4b}
.ovps-config-actions button:focus-visible{outline:3px solid rgba(8,127,98,.22);outline-offset:2px}
@keyframes ovpsConfigIn{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:520px){.ovps-config-dialog{padding:22px 20px 20px;border-radius:13px}.ovps-config-actions{flex-direction:column-reverse}.ovps-config-actions button{width:100%}}


/* v1.6.5 — left sidebar category menu + compact centered search (layout only) */
.vps-shop-wrap .vps-shop-controls{justify-content:center}
.vps-shop-wrap .vps-shop-controls .vps-shop-search-form{flex:0 1 560px;max-width:560px;width:100%;margin:0 auto}
.vps-shop-body{display:grid;grid-template-columns:236px minmax(0,1fr);gap:18px;align-items:start}
.vps-shop-body.vps-shop-body-full{display:block}
.vps-shop-content{min-width:0}
.vps-shop-sidebar{background:var(--ovps-card-bg);border:1px solid var(--vps-border);border-radius:9px;padding:10px;position:sticky;top:16px;box-shadow:0 2px 7px rgba(0,60,45,.04)}
.vps-sidebar-title{font-size:11px;font-weight:750;letter-spacing:.04em;text-transform:uppercase;color:#5b756c;padding:6px 8px 8px}
.vps-cat-menu{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.vps-cat-menu li{margin:0}
.vps-cat-link{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 11px;border-radius:7px;text-decoration:none;color:var(--ovps-category-text);font-size:13px;font-weight:600;border:1px solid transparent;transition:background .12s,border-color .12s,color .12s}
.vps-cat-link:hover{background:var(--vps-mint);border-color:var(--ovps-category-hover-border)}
.vps-cat-link.is-active{background:var(--ovps-accent);border-color:var(--ovps-accent);color:#fff}
.vps-cat-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vps-cat-count{flex:0 0 auto;font-size:11px;font-weight:700;background:rgba(0,0,0,.06);color:inherit;border-radius:999px;padding:2px 8px;opacity:.85}
.vps-cat-link.is-active .vps-cat-count{background:rgba(255,255,255,.22)}
.vps-cat-link:focus-visible{outline:2px solid var(--ovps-category-hover-border);outline-offset:1px}
@media(max-width:800px){
  .vps-shop-body{grid-template-columns:1fr;gap:12px}
  .vps-shop-sidebar{position:static;padding:8px}
  .vps-sidebar-title{display:none}
  .vps-cat-menu{flex-direction:row;flex-wrap:nowrap;overflow-x:auto;gap:6px;-webkit-overflow-scrolling:touch}
  .vps-cat-menu li{flex:0 0 auto}
  .vps-cat-link{white-space:nowrap}
  .vps-cat-count{display:none}
  .vps-shop-wrap .vps-shop-controls .vps-shop-search-form{flex:1 1 auto;max-width:none}
}
