/**
 * Visitor Order for WooCommerce - Scoped Green Theme Stylesheet
 * 100% theme-independent styling scoped to #vo-app-root
 */

@import url('https://fonts.googleapis.com/css2?family=Vazirmatn:wght@300;400;500;600;700;800;900&display=swap');

#vo-app-root,
#vo-app-root * {
  box-sizing: border-box !important;
  font-family: 'Vazirmatn', Tahoma, -apple-system, sans-serif !important;
  -webkit-font-smoothing: antialiased;
}

#vo-app-root {
  direction: rtl !important;
  text-align: right !important;
  background-color: #f8fafc !important;
  color: #0f172a !important;
  margin: 15px auto !important;
  padding: 0 !important;
  max-width: 1360px !important;
  width: 100% !important;
  border-radius: 20px !important;
  border: 1px solid #e2e8f0 !important;
  overflow: hidden !important;
  box-shadow: 0 10px 30px -5px rgba(5, 150, 105, 0.08) !important;
  position: relative !important;
}

/* Neutralize WordPress Theme Button & Input Overrides */
#vo-app-root button {
  text-transform: none !important;
  letter-spacing: normal !important;
  box-shadow: none;
}

#vo-app-root input,
#vo-app-root select {
  font-size: 13px !important;
  background-color: #ffffff !important;
  color: #1e293b !important;
}

/* Top App Header */
#vo-app-root .vo-header {
  background: #ffffff !important;
  border-bottom: 2px solid #a7f3d0 !important;
  padding: 14px 24px !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 50 !important;
  box-shadow: 0 4px 12px rgba(5, 150, 105, 0.05) !important;
}

#vo-app-root .vo-brand {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

#vo-app-root .vo-brand-logo {
  background: none !important;
  overflow: hidden !important;
  flex: none !important;
  color: #ffffff !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 13px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-weight: 900 !important;
  font-size: 16px !important;
  box-shadow: 0 4px 10px rgba(5, 150, 105, 0.3) !important;
}

#vo-app-root .vo-brand-title {
  font-size: 16px !important;
  font-weight: 900 !important;
  color: #064e3b !important;
  line-height: 1.2 !important;
}

#vo-app-root .vo-brand-subtitle {
  font-size: 11px !important;
  color: #64748b !important;
  margin-top: 2px !important;
}

#vo-app-root .vo-btn-primary {
  background: #059669 !important;
  color: #ffffff !important;
  border: none !important;
  padding: 10px 18px !important;
  border-radius: 12px !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  text-decoration: none !important;
  box-shadow: 0 4px 12px rgba(5, 150, 105, 0.25) !important;
}

#vo-app-root .vo-btn-primary:hover {
  background: #047857 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 16px rgba(5, 150, 105, 0.35) !important;
}

/* Green Notice Banner */
#vo-app-root .vo-banner {
  background: linear-gradient(135deg, #064e3b 0%, #059669 100%) !important;
  color: #ffffff !important;
  padding: 20px 24px !important;
  margin: 20px 24px !important;
  border-radius: 18px !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 16px !important;
  box-shadow: 0 8px 20px rgba(6, 78, 59, 0.15) !important;
}

#vo-app-root .vo-banner-title {
  margin: 0 0 6px 0 !important;
  font-size: 17px !important;
  font-weight: 900 !important;
  color: #ffffff !important;
}

#vo-app-root .vo-banner-desc {
  margin: 0 !important;
  font-size: 12px !important;
  color: #d1fae5 !important;
  line-height: 1.5 !important;
}

#vo-app-root .vo-banner-badge {
  background: rgba(0, 0, 0, 0.25) !important;
  padding: 8px 16px !important;
  border-radius: 12px !important;
  font-size: 12px !important;
  color: #a7f3d0 !important;
  font-weight: 700 !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
}

/* Filter & Controls Bar */
#vo-app-root .vo-controls-bar {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 16px !important;
  margin: 0 24px 20px 24px !important;
  padding: 14px 20px !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
}

#vo-app-root .vo-search-wrap {
  flex: 1 !important;
  min-width: 260px !important;
  max-width: 480px !important;
}

#vo-app-root .vo-search-input {
  width: 100% !important;
  padding: 10px 16px !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 12px !important;
  font-size: 13px !important;
  outline: none !important;
  background: #f8fafc !important;
  transition: border-color 0.2s, background 0.2s !important;
}

#vo-app-root .vo-search-input:focus {
  border-color: #059669 !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 3px rgba(5, 150, 105, 0.1) !important;
}

#vo-app-root .vo-size-controls {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: #ecfdf5 !important;
  padding: 6px 12px !important;
  border-radius: 12px !important;
  border: 1px solid #a7f3d0 !important;
  font-size: 12px !important;
}

#vo-app-root .vo-size-btn {
  border: 1px solid transparent !important;
  background: #ffffff !important;
  color: #064e3b !important;
  padding: 6px 12px !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  transition: all 0.2s !important;
}

#vo-app-root .vo-size-btn.active {
  background: #059669 !important;
  color: #ffffff !important;
  font-weight: 800 !important;
  box-shadow: 0 2px 6px rgba(5, 150, 105, 0.3) !important;
}

/* Category Filter Tabs */
#vo-app-root .vo-categories-bar {
  display: flex !important;
  gap: 8px !important;
  overflow-x: auto !important;
  padding: 0 24px 16px 24px !important;
}

#vo-app-root .vo-cat-btn {
  white-space: nowrap !important;
  border: 1px solid #e2e8f0 !important;
  background: #ffffff !important;
  color: #475569 !important;
  padding: 7px 14px !important;
  border-radius: 10px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: all 0.2s !important;
}

#vo-app-root .vo-cat-btn.active,
#vo-app-root .vo-cat-btn:hover {
  background: #ecfdf5 !important;
  border-color: #059669 !important;
  color: #064e3b !important;
  font-weight: 700 !important;
}

/* Big Product Grid (عکس‌های بسیار بزرگ کالاها) */
#vo-app-root .vo-product-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(360px, 1fr)) !important;
  gap: 24px !important;
  padding: 0 24px 30px 24px !important;
}

@media (max-width: 640px) {
  #vo-app-root .vo-product-grid {
    grid-template-columns: 1fr !important;
    padding: 0 14px 20px 14px !important;
  }
  #vo-app-root .vo-banner,
  #vo-app-root .vo-controls-bar {
    margin-left: 14px !important;
    margin-right: 14px !important;
  }
}

/* Product Card */
#vo-app-root .vo-product-card {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease !important;
}

#vo-app-root .vo-product-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 16px 30px -8px rgba(5, 150, 105, 0.16) !important;
  border-color: #059669 !important;
}

/* Big Image Viewport Container */
#vo-app-root .vo-product-image-wrap {
  position: relative !important;
  width: 100% !important;
  height: 340px !important; /* Prominent Big Photo Size */
  background: #f1f5f9 !important;
  overflow: hidden !important;
  cursor: pointer !important;
}

#vo-app-root .vo-product-image-wrap > img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

#vo-app-root .vo-product-card:hover .vo-product-image-wrap > img {
  transform: scale(1.06) !important;
}

#vo-app-root .vo-zoom-badge {
  position: absolute !important;
  top: 14px !important;
  left: 14px !important;
  background: rgba(6, 78, 59, 0.88) !important;
  color: #ffffff !important;
  padding: 6px 14px !important;
  border-radius: 12px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  backdrop-filter: blur(6px) !important;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
}

#vo-app-root .vo-stock-badge {
  position: absolute !important;
  top: 14px !important;
  right: 14px !important;
  background: rgba(255, 255, 255, 0.96) !important;
  color: #064e3b !important;
  padding: 5px 12px !important;
  border-radius: 10px !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08) !important;
  border: 1px solid rgba(167, 243, 208, 0.6) !important;
}

/* Card Body */
#vo-app-root .vo-card-body {
  padding: 20px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  flex: 1 !important;
}

#vo-app-root .vo-meta-line {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  font-size: 11px !important;
  color: #059669 !important;
  font-weight: 700 !important;
  margin-bottom: 6px !important;
}

#vo-app-root .vo-product-title {
  font-size: 16px !important;
  font-weight: 800 !important;
  color: #0f172a !important;
  margin: 0 0 8px 0 !important;
  line-height: 1.4 !important;
}

#vo-app-root .vo-product-desc {
  font-size: 12px !important;
  color: #64748b !important;
  line-height: 1.6 !important;
  margin: 0 0 16px 0 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

/* Unit Selector Tabs */
#vo-app-root .vo-unit-selector {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 8px !important;
  margin-bottom: 16px !important;
}

#vo-app-root .vo-unit-btn {
  padding: 8px 6px !important;
  border: 1px solid #cbd5e1 !important;
  background: #f8fafc !important;
  color: #334155 !important;
  border-radius: 10px !important;
  font-size: 11px !important;
  cursor: pointer !important;
  text-align: center !important;
  transition: all 0.2s !important;
  line-height: 1.2 !important;
}

#vo-app-root .vo-unit-btn.active {
  border-color: #059669 !important;
  background: #ecfdf5 !important;
  color: #064e3b !important;
  font-weight: 800 !important;
  box-shadow: 0 2px 6px rgba(5, 150, 105, 0.15) !important;
}

/* Price & Action Section */
#vo-app-root .vo-card-footer {
  border-top: 1px solid #f1f5f9 !important;
  padding-top: 14px !important;
}

#vo-app-root .vo-price-row {
  display: flex !important;
  justify-content: space-between !important;
  align-items: baseline !important;
  margin-bottom: 12px !important;
}

#vo-app-root .vo-price-label {
  font-size: 12px !important;
  color: #64748b !important;
}

#vo-app-root .vo-price-val {
  font-size: 18px !important;
  font-weight: 900 !important;
  color: #064e3b !important;
}

#vo-app-root .vo-action-row {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

#vo-app-root .vo-stepper {
  display: flex !important;
  align-items: center !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 10px !important;
  background: #ffffff !important;
  overflow: hidden !important;
}

#vo-app-root .vo-stepper button {
  padding: 8px 12px !important;
  background: transparent !important;
  border: none !important;
  color: #475569 !important;
  font-weight: 900 !important;
  cursor: pointer !important;
  transition: background 0.15s !important;
}

#vo-app-root .vo-stepper button:hover {
  background: #f1f5f9 !important;
}

#vo-app-root .vo-stepper input {
  width: 38px !important;
  border: none !important;
  text-align: center !important;
  font-weight: 800 !important;
  font-size: 13px !important;
  padding: 0 !important;
  outline: none !important;
}

/* Fullscreen Modal Lightbox */
.vo-lightbox-overlay {
  position: fixed !important;
  inset: 0 !important;
  background: rgba(15, 23, 42, 0.88) !important;
  backdrop-filter: blur(8px) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 999999 !important;
  padding: 20px !important;
}

.vo-lightbox-box {
  background: #ffffff !important;
  border-radius: 20px !important;
  max-width: 900px !important;
  width: 100% !important;
  max-height: 90vh !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.4) !important;
  position: relative !important;
}

@media (min-width: 768px) {
  .vo-lightbox-box {
    flex-direction: row !important;
  }
}

/* Sliding Cart Drawer */
#vo-cart-modal {
  position: fixed !important;
  inset: 0 !important;
  background: rgba(15, 23, 42, 0.7) !important;
  backdrop-filter: blur(4px) !important;
  z-index: 99999 !important;
  display: none;
  justify-content: flex-end !important;
}

#vo-cart-modal .vo-drawer {
  width: 100% !important;
  max-width: 480px !important;
  background: #ffffff !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  box-shadow: -10px 0 30px rgba(0, 0, 0, 0.25) !important;
  animation: voSlideIn 0.25s ease-out !important;
}

@keyframes voSlideIn {
  from { transform: translateX(-100%); }
  to { transform: translateX(0); }
}

/* ===== افزوده‌های ظاهر (هماهنگ با تم سبز) ===== */
html body.vo-page{margin:0;padding:0;background:#ecfdf5;font-family:'Vazirmatn',Tahoma,sans-serif}
#vo-app-root .vo-nav{display:flex;gap:6px;flex-wrap:wrap}
#vo-app-root .vo-nav a{padding:8px 14px;border-radius:10px;font-size:12px;font-weight:700;color:#334155;text-decoration:none;background:#f1f5f9}
#vo-app-root .vo-nav a.on{background:#ecfdf5;color:#064e3b;border:1px solid #059669}
#vo-app-root .vo-hd-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
#vo-app-root .vo-cust{background:#f1f5f9;border:1px solid #cbd5e1;border-radius:12px;padding:4px 10px;display:flex;align-items:center;gap:6px;font-size:12px}
#vo-app-root .vo-cust select{border:0;background:transparent!important;font-weight:800;color:#064e3b;max-width:190px}
#vo-app-root .vo-cnt{background:#fff;color:#064e3b;padding:2px 8px;border-radius:12px;font-weight:900;font-size:11px}
#vo-app-root .vo-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 24px 16px}
#vo-app-root .vo-stat{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:16px;font-size:12px;color:#64748b}
#vo-app-root .vo-stat b{display:block;font-size:22px;color:#064e3b;font-weight:900}
#vo-app-root .vo-order{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:14px 16px;margin:0 24px 12px}
#vo-app-root .vo-order .oh,#vo-app-root .vo-order .of{display:flex;justify-content:space-between;gap:8px;align-items:center}
#vo-app-root .vo-order .oi{margin:8px 0;color:#64748b;font-size:13px;line-height:1.9}
#vo-app-root .vo-order .of{border-top:1px solid #f1f5f9;padding-top:8px;font-size:13px}
#vo-app-root .vo-tag{background:#ecfdf5;color:#064e3b;border:1px solid #a7f3d0;border-radius:99px;padding:2px 10px;font-size:11px;font-weight:700;white-space:nowrap}
#vo-app-root .vo-empty{margin:0 24px 20px;background:#fff;border:1px dashed #a7f3d0;border-radius:16px;padding:24px;text-align:center;color:#64748b}
#vo-app-root .vo-unit-btn small{display:block;font-size:9px;color:#059669}
#vo-app-root .vo-add-cart-btn{flex:1}
#vo-app-root .vo-drawer-head{padding:18px 24px;border-bottom:1px solid #e2e8f0;background:#ecfdf5;display:flex;justify-content:space-between;align-items:center}
#vo-app-root .vo-drawer-head h3{margin:0;font-size:16px;color:#064e3b;font-weight:900}
#vo-app-root .vo-x{background:transparent;border:0;font-size:18px;cursor:pointer;color:#64748b}
#vo-app-root .vo-drawer-body{padding:20px;overflow-y:auto;flex:1}
#vo-app-root .vo-drawer-foot{padding:20px;border-top:1px solid #e2e8f0;background:#f8fafc}
#vo-app-root .vo-drawer-foot input{width:100%;padding:10px;border:1px solid #cbd5e1;border-radius:10px;margin-bottom:12px}
#vo-app-root .vo-total{display:flex;justify-content:space-between;font-size:15px;font-weight:900;color:#064e3b;margin-bottom:14px}
#vo-app-root .vo-cart-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:14px;margin-bottom:12px;display:flex;justify-content:space-between;align-items:center;gap:8px}
#vo-app-root .vo-cart-item .cn{font-weight:800;font-size:13px}.vo-cart-item .cu{font-size:11px;color:#059669;font-weight:600}
#vo-app-root .vo-rm{background:none;border:0;color:#ef4444;font-size:11px;cursor:pointer;font-weight:700;padding:3px 0}
#vo-app-root #vo-cart-modal .vo-drawer{display:flex}
/* ورود */
.vo-login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;direction:rtl;font-family:'Vazirmatn',Tahoma,sans-serif}
.vo-login-card{max-width:420px;width:100%;background:#fff;padding:32px 26px;border-radius:24px;border:1px solid #a7f3d0;box-shadow:0 20px 40px -10px rgba(5,150,105,.15);text-align:center;display:grid;gap:12px}
.vo-login-card .lg{width:60px;height:60px;margin:0 auto;background:linear-gradient(135deg,#059669,#047857);color:#fff;border-radius:18px;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:900}
.vo-login-card h1{margin:0;font-size:19px;color:#064e3b;font-weight:900}.vo-login-card p{margin:0;color:#64748b;font-size:12px}
.vo-login-card label{display:grid;gap:4px;text-align:right;font-size:12px;font-weight:700;color:#334155}
.vo-login-card input[type=text],.vo-login-card input[type=password]{width:100%;min-height:46px;padding:10px 14px;border:1px solid #cbd5e1;border-radius:12px;font:inherit;font-size:16px}
.vo-login-card .chk{display:flex;align-items:center;gap:8px;font-weight:400}.vo-login-card .btn{width:100%;min-height:48px;border:0;border-radius:12px;background:#059669;color:#fff;font:inherit;font-weight:800;cursor:pointer}
.vo-login-card .err{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;padding:10px;border-radius:12px;font-size:12px}
@media(max-width:640px){#vo-app-root .vo-stats,#vo-app-root .vo-order,#vo-app-root .vo-empty{margin-left:14px;margin-right:14px}#vo-app-root{margin:8px!important;border-radius:16px!important}#vo-app-root .vo-header{padding:12px 14px!important}}

#vo-app-root .vo-bal{grid-column:1/-1;background:#ecfdf5;border-color:#059669}
#vo-app-root .vo-bal small{font-size:11px;color:#64748b}
#vo-app-root .vo-datef{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
#vo-app-root .vo-datef input[type=text]{width:150px;padding:9px 12px;border:1px solid #cbd5e1;border-radius:12px;font-size:16px}
#vo-app-root a.vo-cat-btn{text-decoration:none;display:inline-block}
#vo-app-root .vo-stock-line{font-size:12px;color:#64748b;margin:0 0 10px}#vo-app-root .vo-stock-line b{color:#064e3b;font-size:14px}#vo-app-root .vo-stock-line.low b{color:#b91c1c}

#vo-app-root .vo-product-image-wrap{position:relative!important}
#vo-app-root .vo-zoom-badge{top:14px!important;left:14px!important;right:auto!important;bottom:auto!important;width:auto!important;white-space:nowrap!important;margin:0!important;transform:none!important}
#vo-app-root .vo-stock-badge{top:14px!important;right:14px!important;left:auto!important;white-space:nowrap!important;margin:0!important}

#vo-app-root img.emoji{width:1em!important;height:1em!important;display:inline!important}
#vo-app-root .vo-prog{height:9px;background:#e2e8f0;border-radius:99px;overflow:hidden;margin:10px 0 6px}
#vo-app-root .vo-prog i{display:block;height:100%;background:#059669;border-radius:99px}
#vo-app-root .vo-prog.done i{background:#d97706}
#vo-app-root .vo-tgt{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:#64748b;flex-wrap:wrap}
#vo-app-root .vo-tgt b{color:#064e3b}

/* نوار دوبخشی فروخته‌شده / مانده */
#vo-app-root .vo-split{display:flex;height:24px;border-radius:99px;overflow:hidden;background:#e2e8f0;margin:12px 0 8px}
#vo-app-root .vo-split span{flex:none;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;white-space:nowrap;min-width:0;overflow:hidden}
#vo-app-root .vo-split .s{background:#059669;color:#fff}
#vo-app-root .vo-split .r{background:#fcd34d;color:#78350f}
#vo-app-root .vo-split.done .s{background:#d97706}
#vo-app-root .vo-split-leg{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:12px;color:#475569;margin-bottom:6px}
#vo-app-root .vo-split-leg b{color:#064e3b}
#vo-app-root .vo-split-leg .d{display:inline-block;width:10px;height:10px;border-radius:50%;margin-left:5px;vertical-align:-1px}
#vo-app-root .vo-split-leg .d.s{background:#059669}#vo-app-root .vo-split-leg .d.r{background:#fcd34d}
#vo-app-root .vo-overall{border:2px solid #a7f3d0}

/* انتخاب مشتری با جستجو */
#vo-app-root .vo-cp-btn{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:170px;max-width:240px;border:0;background:transparent;font:inherit;font-weight:800;color:#64748b;cursor:pointer;padding:6px 2px}
#vo-app-root .vo-cp-btn.has{color:#064e3b}
#vo-app-root .vo-cp-btn .t{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;text-align:right}
#vo-app-root .vo-cp-ov{position:fixed;inset:0;background:rgba(15,23,42,.55);z-index:100000;align-items:center;justify-content:center;padding:16px}
#vo-app-root .vo-cp-box{background:#fff;border-radius:18px;width:min(480px,100%);max-height:80vh;max-height:min(80dvh,640px);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,.3)}
#vo-app-root .vo-cp-head{display:flex;gap:8px;padding:12px;border-bottom:1px solid #e2e8f0}
#vo-app-root .vo-cp-q{flex:1;min-width:0;min-height:44px;border:1px solid #cbd5e1;border-radius:12px;padding:8px 12px;font-size:16px}
#vo-app-root .vo-cp-x{min-width:44px;border:0;border-radius:12px;background:#f1f5f9;cursor:pointer;font-size:16px}
#vo-app-root .vo-cp-meta{padding:6px 14px 0;font-size:12px;color:#64748b;min-height:18px}
#vo-app-root .vo-cp-list{overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
#vo-app-root .vo-cp-item{display:block;width:100%;text-align:right;border:0;border-bottom:1px solid #f1f5f9;background:#fff;padding:12px 14px;cursor:pointer;font:inherit}
#vo-app-root .vo-cp-item:hover,#vo-app-root .vo-cp-item.on{background:#ecfdf5}
#vo-app-root .vo-cp-item b{display:block;color:#064e3b}
#vo-app-root .vo-cp-item small{display:block;color:#64748b;margin-top:2px}
#vo-app-root .vo-cp-empty{padding:26px;text-align:center;color:#94a3b8;font-size:13px}
@media(max-width:640px){
  #vo-app-root .vo-cp-ov{align-items:flex-end;padding:0}
  #vo-app-root .vo-cp-box{width:100%;border-radius:18px 18px 0 0;max-height:88vh;max-height:88dvh}
  #vo-app-root .vo-cp-btn{min-width:0;max-width:none;width:100%}
  #vo-app-root .vo-cust{flex:1 1 auto;min-width:0}
}

/* رفع اسکرول افقی روی گوشی: عرض ۱۰۰٪ + حاشیه ۸ پیکسل از صفحه بیرون می‌زد */
@media(max-width:640px){#vo-app-root{width:auto!important;max-width:none!important}}

#vo-app-root .vo-tier-hint{display:none;font-size:11px;color:#b45309;background:#fffbeb;border:1px solid #fde68a;border-radius:10px;padding:5px 10px;margin:0 0 10px}
#vo-app-root .vo-drawer-foot select{width:100%;padding:10px;border:1px solid #cbd5e1;border-radius:10px;margin-bottom:12px;font:inherit;background:#fff}
#vo-app-root .vo-tline{display:flex;justify-content:space-between;font-size:12px;color:#64748b;margin-bottom:6px}
#vo-app-root .vo-tline b{color:#334155}
#vo-app-root .vo-dl b{color:#d97706}
#vo-app-root .vo-dt{border-top:1px dashed #cbd5e1;padding-top:6px;margin-top:2px;font-weight:800}

/* تصویر کالا: همیشه کامل و بدون برش نمایش داده شود */
#vo-app-root .vo-product-grid .vo-product-image-wrap{height:auto!important;aspect-ratio:1/1!important;max-height:420px!important;background:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:10px!important;box-sizing:border-box!important}
#vo-app-root .vo-product-image-wrap > img{width:100%!important;height:100%!important;object-fit:contain!important;transform:none!important}
#vo-app-root .vo-product-card:hover .vo-product-image-wrap > img{transform:none!important}

#vo-app-root .vo-cons-row{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#475569;background:#f1f5f9;border-radius:10px;padding:5px 10px;margin:0 0 8px}#vo-app-root .vo-cons-row b{color:#0f172a}

#vo-app-root .vo-brand-logo svg{display:block;width:100%;height:100%}
.vo-login-card .lg{background:none!important;box-shadow:none!important;width:76px!important;height:76px!important;border-radius:22px!important;overflow:hidden;filter:drop-shadow(0 8px 14px rgba(5,150,105,.35))}.vo-login-card .lg svg{display:block}
.vo-login-card .vo-lg-name{font-size:26px;font-weight:900;color:#064e3b;line-height:1.1;margin-top:-2px}

/* مخفی‌کردن کارت‌ها هنگام فیلتر دسته/جستجو (display:flex!important کارت را با style مستقیم نمی‌شد مخفی کرد) */
#vo-app-root .vo-product-card.vo-hide{display:none!important}
#vo-app-root .vo-pp-row{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#065f46;background:#ecfdf5;border-radius:10px;padding:5px 10px;margin:0 0 8px}#vo-app-root .vo-pp-row b{color:#064e3b}
