/*
 * Vanashanti Zone Shop v7 — Frontend CSS
 * Design frozen 2026-05-15 (approved by Siva). No visual changes without approval.
 */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

/* ── Option A: Hide Agrikon theme chrome on vzs7 pages ───────────────────────
   TOP BAR and FOOTER are KEPT. Main nav, sticky nav, page banner,
   breadcrumbs, floating cart, and WC account links are hidden.           */

/* Main logo + navigation bar */
body.vzs7-page .main-menu,
body.vzs7-page nav.main-menu,
body.vzs7-page .header-navigation,
body.vzs7-page .main-header__nav { display: none !important; }

/* Sticky header */
body.vzs7-page .stricky-header,
body.vzs7-page .stricked-menu { display: none !important; }

/* Fix whitespace gap — collapse the header wrapper height after hiding nav */
body.vzs7-page .main-header,
body.vzs7-page #nt-header { height: auto !important; min-height: 0 !important; padding: 0 !important; margin: 0 !important; }
body.vzs7-page .main-header > *:not(.topbar):not(.header-top-bar):not(.top-bar) { display: none !important; }

/* Page title / hero banner */
body.vzs7-page .page-header,
body.vzs7-page .nt-hero-wrap,
body.vzs7-page .nt-hero-title { display: none !important; }

/* Breadcrumbs */
body.vzs7-page .thm-breadcrumb,
body.vzs7-page .breadcrumb-trail,
body.vzs7-page .woocommerce-breadcrumb,
body.vzs7-page nav.woocommerce-breadcrumb { display: none !important; }

/* Floating cart button + circle (bottom right) */
body.vzs7-page .scroll-to-top,
body.vzs7-page .main-header__cart-btn,
body.vzs7-page a.main-header__cart-btn,
body.vzs7-page .agrikon-cart-btn,
body.vzs7-page .cart-btn,
body.vzs7-page .floating-cart,
body.vzs7-page .xoo-wsc-modal,
body.vzs7-page .xoo-wsc-cart-btn { display: none !important; }

/* Footer — hide completely */
body.vzs7-page footer,
body.vzs7-page #nt-footer,
body.vzs7-page .main-footer,
body.vzs7-page footer.site-footer,
body.vzs7-page .site-footer,
body.vzs7-page #colophon { display: none !important; }

/* Remove content area padding added by theme */
body.vzs7-page #nt-page-container,
body.vzs7-page .page-content-wrap { padding: 0 !important; }
body.vzs7-page #nt-content { padding: 0 !important; margin: 0 !important; }
body.vzs7-page .section-padding,
body.vzs7-page .blog-grid { padding-top: 0 !important; padding-bottom: 0 !important; }

body.vzs7-page { background: #f5f5f3 !important; }

body.vzs7-page .site-content,
body.vzs7-page #primary,
body.vzs7-page #content,
body.vzs7-page .content-area,
body.vzs7-page main,
body.vzs7-page .entry-content,
body.vzs7-page article.page { padding: 0 !important; margin: 0 !important; max-width: 100% !important; width: 100% !important; }

/* ── Base ────────────────────────────────────────────────────────────────── */
body.vzs7-page { font-family: 'Inter', system-ui, sans-serif; color: #1a1a1a; font-size: 14px; line-height: 1.5; }

/* ── Kanha Fresh Nav ─────────────────────────────────────────────────────── */
.vzs7-nav{background:#255946;position:sticky;top:0;z-index:200;box-shadow:0 2px 10px rgba(0,0,0,.18)}
.nav-top{padding:0 20px;height:60px;display:flex;align-items:center;justify-content:space-between}
.nav-left{display:flex;align-items:center;flex-shrink:0}
.nav-kf-brand{display:flex;flex-direction:column;align-items:flex-start;gap:1px}
.nav-kf-main{display:flex;align-items:center;gap:6px;font-family:"Arial Black",Arial,Helvetica,sans-serif;font-size:28px;font-weight:900;color:#fff;letter-spacing:3px;text-shadow:0 2px 8px rgba(0,0,0,.28);white-space:nowrap;line-height:1}
.kf-icon{flex-shrink:0;vertical-align:middle}
.nav-kf-sub{font-family:Arial,Helvetica,sans-serif;font-size:9px;font-weight:400;font-style:italic;color:rgba(255,255,255,.68);letter-spacing:.5px;align-self:flex-end;line-height:1;white-space:nowrap}
.nav-right{display:flex;align-items:center;gap:14px;flex-shrink:0}
.nav-orders-btn{display:flex;align-items:center;padding:7px 14px;border-radius:20px;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.35);color:#fff;font-size:13px;font-weight:600;text-decoration:none;letter-spacing:.2px;transition:background .2s,border-color .2s;white-space:nowrap}
.nav-orders-btn:hover{background:rgba(255,255,255,.25);border-color:rgba(255,255,255,.6);color:#fff;text-decoration:none}
.nav-tagline{text-align:center;padding:4px 28px 10px;font-size:16px;font-style:italic;color:rgba(255,255,255,.92);letter-spacing:.2px;border-top:1px solid rgba(255,255,255,.12)}
.nav-wave{display:block;width:100%;background:#255946}
.gif-icon{display:inline-block;margin-right:6px;animation:vzs7-gifbounce 2s ease-in-out infinite;font-style:normal}
@keyframes vzs7-gifbounce{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-4px) scale(1.15)}}

@media(max-width:600px){
  .nav-top{padding:0 12px;height:52px}
  .nav-kf-main{font-size:15px;letter-spacing:1px;gap:4px}
  .kf-icon{width:15px!important;height:18px!important}
  .nav-kf-sub{font-size:7px;align-self:flex-end}
  .nav-tagline{font-size:13px;padding:3px 12px 7px}
  .nav-orders-btn{padding:6px 10px;font-size:12px;border-radius:16px}
  .nav-orders-label{display:none}
  .nav-orders-btn svg{margin-right:0}
}

/* ── Shared footer ───────────────────────────────────────────────────────── */
.vzs7-footer{background:#fff;border-top:1px solid #e8e8e8;padding:14px 20px 16px;text-align:center}
.vzs7-footer-company{font-size:12px;font-weight:600;color:#444;margin-bottom:4px}
.vzs7-footer-contact{font-size:12px;color:#555;margin-bottom:4px}
.vzs7-footer-contact a{color:#255946;text-decoration:none}
.vzs7-footer-contact a:hover{text-decoration:underline}
.vzs7-footer-sep{color:#bbb}
.vzs7-footer-copy{font-size:11px;color:#bbb}

/* ── Page body ───────────────────────────────────────────────────────────── */
.vzs7-page-body{padding:28px 16px 48px;display:flex;justify-content:center}
.vzs7-form-panel{width:100%;max-width:500px}
@media(max-width:600px){.vzs7-page-body{padding:20px 14px 48px}}

/* ── Step breadcrumb ─────────────────────────────────────────────────────── */
.vzs7-steps{display:flex;border-radius:10px;overflow:hidden;border:1px solid #e0e0e0;margin-bottom:20px;background:#fff}
.vzs7-step-item{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;font-size:12px;font-weight:500;transition:all .3s}
.vzs7-step-item+.vzs7-step-item{border-left:1px solid #e0e0e0}
.vzs7-step-item.active{background:#255946;color:#fff}
.vzs7-step-item.done{background:#edf4f1;color:#255946}
.vzs7-step-item.inactive{background:#fafafa;color:#aaa}
.vzs7-step-num{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700}
.vzs7-step-item.active .vzs7-step-num{background:rgba(255,255,255,.25);color:#fff}
.vzs7-step-item.done .vzs7-step-num{background:#255946;color:#fff}
.vzs7-step-item.inactive .vzs7-step-num{background:#ddd;color:#aaa}

/* ── Cards ───────────────────────────────────────────────────────────────── */
.vzs7-card{background:#fff;border:1px solid #e0e0e0;border-top:3px solid #255946;border-radius:0 0 12px 12px;padding:24px;margin-bottom:16px;transition:all .3s}
.vzs7-card-locked{border-top-color:#ccc;opacity:.5;pointer-events:none}
.vzs7-card-title{font-size:16px;font-weight:600;color:#1a1a1a;margin-bottom:4px}
.vzs7-card-sub{font-size:12px;color:#777;margin-bottom:20px;line-height:1.5}

/* Verified header (collapsed state) */
.vzs7-verified-header{display:flex;align-items:center;justify-content:space-between}
.vzs7-vinfo{display:flex;align-items:center;gap:10px}
.vzs7-verified-check{width:28px;height:28px;border-radius:50%;background:#edf4f1;border:1.5px solid #255946;display:flex;align-items:center;justify-content:center;font-size:13px;color:#255946;flex-shrink:0}
.vzs7-verified-name{font-size:14px;font-weight:600;color:#1a1a1a}
.vzs7-verified-phone{font-size:12px;color:#777}

/* ── Form elements ───────────────────────────────────────────────────────── */
.vzs7-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.vzs7-fg{margin-bottom:14px}
.vzs7-fg:last-child{margin-bottom:0}
label.vzs7-lbl{display:block;font-size:11px;font-weight:600;color:#777;text-transform:uppercase;letter-spacing:.6px;margin-bottom:5px}
.vzs7-form-panel input[type="text"],
.vzs7-form-panel input[type="tel"],
.vzs7-form-panel select{width:100%;height:38px;border:1px solid #ddd;border-radius:8px;padding:0 12px;font-size:13px;font-family:inherit;color:#1a1a1a;background:#fff!important;outline:none;transition:border-color .15s;appearance:none;-webkit-appearance:none}
.vzs7-dp-fg select,.vzs7-dp-fg input[type="text"]{background:#fff!important}
.vzs7-form-panel input:focus,
.vzs7-form-panel select:focus{border-color:#255946;box-shadow:0 0 0 3px rgba(37,89,70,.1)}

/* ── Placeholder text — hint only; smaller, italic, light grey ── */
.vzs7-form-panel input::placeholder,
.vzs7-form-panel textarea::placeholder,
.vzs7-dp-fg input::placeholder,
.vzs7-co-notes::placeholder{color:#c0c0c0;font-style:italic;font-size:12px;font-weight:400}

/* ── Required field marker ── */
.vzs7-req{color:#e04040;margin-left:2px;font-style:normal}
.vzs7-form-panel select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7' viewBox='0 0 12 7'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23777' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px;cursor:pointer}

.vzs7-otp-row{display:flex;gap:8px}
.vzs7-otp-row input{flex:1}
.vzs7-btn-send-otp{height:38px;padding:0 14px;background:#edf4f1;border:1px solid #255946;border-radius:8px;font-size:12px;color:#255946;font-weight:600;white-space:nowrap;cursor:pointer;font-family:inherit;flex-shrink:0;transition:background .15s}
.vzs7-btn-send-otp:hover{background:#dff2e6}

.vzs7-btn-primary{width:100%;height:42px;background:#255946;border:none;border-radius:8px;color:#fff!important;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;margin-top:6px;transition:background .15s,transform .1s;display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}
.vzs7-btn-primary:hover{background:#1d4334}
.vzs7-btn-primary:active{transform:scale(.99)}
.vzs7-btn-primary:disabled{background:#b0cfb9;cursor:not-allowed;transform:none}

.vzs7-otp-verified-notice{display:none;align-items:center;gap:8px;margin-top:12px;padding:10px 14px;background:#edf4f1;border:1px solid #9ec4b5;border-radius:8px;font-size:12px;color:#255946;font-weight:500}
.vzs7-otp-verified-notice.show{display:flex}

.vzs7-msg-success{color:#255946;background:#edf4f1;border:1px solid #9ec4b5;border-radius:6px;padding:7px 10px;font-size:12px;margin-top:6px}
.vzs7-msg-error{color:#c0392b;background:#fdf3f2;border:1px solid #f5c6c2;border-radius:6px;padding:7px 10px;font-size:12px;margin-top:6px}

/* ── Community cards ─────────────────────────────────────────────────────── */
.vzs7-section-label{font-size:11px;font-weight:600;color:#777;text-transform:uppercase;letter-spacing:.6px;margin-bottom:12px}
.vzs7-rcard{border:1px solid #ddd;border-radius:10px;padding:14px 15px;margin-bottom:10px;cursor:pointer;transition:border-color .15s,background .15s}
.vzs7-rcard:hover{border-color:#9ec4b5}
.vzs7-rcard.selected{border:1.5px solid #255946;background:#f8fdf9}
.vzs7-rcard-top{display:flex;align-items:flex-start;gap:11px}
.vzs7-radio-dot{width:17px;height:17px;border-radius:50%;border:1.5px solid #ccc;flex-shrink:0;margin-top:2px;display:flex;align-items:center;justify-content:center;transition:border-color .15s,background .15s}
.vzs7-rcard.selected .vzs7-radio-dot{border-color:#255946;background:#255946}
.vzs7-rcard.selected .vzs7-radio-dot::after{content:'';width:6px;height:6px;border-radius:50%;background:#fff;display:block}
.vzs7-rcard-label{font-size:13px;font-weight:600;color:#1a1a1a;margin-bottom:2px}
.vzs7-rcard-desc{font-size:11px;color:#777;line-height:1.4}
.vzs7-rcard-fields{display:none;margin-top:12px;padding-top:12px;border-top:1px solid #e8e8e8;flex-direction:column;gap:11px}
.vzs7-rcard.selected .vzs7-rcard-fields{display:flex}

.vzs7-courier-note{font-size:11px;color:#e07b00;background:#fff8ee;border:1px solid #f5d89a;border-radius:6px;padding:7px 10px;margin-top:4px;line-height:1.5}

/* ── SHOP — Zone bar ─────────────────────────────────────────────────────── */
.vzs7-zone-bar{background:#fff;border-bottom:1px solid #e8e8e8;padding:10px 28px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.vzs7-zone-info{display:flex;align-items:center;gap:8px;font-size:12px;color:#555;flex:1;min-width:0}
.vzs7-zone-icon{width:24px;height:24px;background:#edf4f1;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;flex-shrink:0}
.vzs7-zone-text{font-weight:500;color:#1a1a1a}
.vzs7-zone-sub{color:#888}
.vzs7-zone-edit-btn{font-size:11px;color:#255946;background:none;border:none;cursor:pointer;font-family:inherit;font-weight:500;padding:0;white-space:nowrap;flex-shrink:0;text-decoration:none}
.vzs7-zone-edit-btn:hover{text-decoration:underline}

/* ── SHOP — Delivery change panel ────────────────────────────────────────── */
.vzs7-delivery-panel{display:none;background:#edf4f1;border-bottom:1px solid #9ec4b5;padding:18px 28px}
.vzs7-delivery-panel.open{display:block}
.vzs7-dp-title{font-size:13px;font-weight:600;color:#1a1a1a;margin-bottom:12px}
.vzs7-dp-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:620px}
.vzs7-dp-fg label{display:block;font-size:11px;font-weight:600;color:#777;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}
.vzs7-dp-fg select,.vzs7-dp-fg input[type="text"]{width:100%;height:36px;border:1px solid #c0d9c8;border-radius:7px;padding:0 10px;font-size:13px;font-family:inherit;background:#fff;outline:none}
.vzs7-dp-fg select:focus,.vzs7-dp-fg input:focus{border-color:#255946}
.vzs7-dp-fg select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7' viewBox='0 0 12 7'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23777' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:28px;cursor:pointer}
.vzs7-dp-actions{display:flex;gap:10px;margin-top:12px}
.vzs7-dp-save{height:34px;padding:0 18px;background:#255946;border:none;border-radius:7px;color:#fff;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit}
.vzs7-dp-save:hover{background:#1d4334}
.vzs7-dp-save:disabled{background:#b0cfb9;cursor:not-allowed}
.vzs7-dp-cancel{height:34px;padding:0 14px;background:transparent;border:1px solid #9ec4b5;border-radius:7px;color:#555;font-size:13px;cursor:pointer;font-family:inherit}
.vzs7-dp-cancel:hover{background:#dff2e6}

/* ── SHOP — Body & header ────────────────────────────────────────────────── */
.vzs7-shop-body{padding:24px 28px 110px;max-width:1100px;margin:0 auto}
.vzs7-shop-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}
.vzs7-shop-title{font-size:20px;font-weight:600;color:#1a1a1a}
.vzs7-shop-sub{font-size:12px;color:#888;margin-top:2px}

/* ── SHOP — Filter tabs ──────────────────────────────────────────────────── */
.vzs7-filter-tabs{display:flex;gap:8px;margin-bottom:22px;flex-wrap:wrap}
.vzs7-tab{padding:7px 16px;border-radius:20px;border:1px solid #e0e0e0;font-size:12px;font-weight:500;cursor:pointer;background:#fff;color:#555;transition:all .15s;user-select:none}
.vzs7-tab:hover{border-color:#255946;color:#255946}
.vzs7-tab.active{background:#255946;border-color:#255946;color:#fff}

/* ── SHOP — Product grid ─────────────────────────────────────────────────── */
.vzs7-product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:16px}
.vzs7-product-card{background:#fff;border:1px solid #e8e8e8;border-radius:12px;overflow:hidden;transition:box-shadow .2s,transform .15s}
.vzs7-product-card:hover{box-shadow:0 4px 16px rgba(0,0,0,.1);transform:translateY(-2px)}
.vzs7-product-card.hidden{display:none}
.vzs7-product-img{height:120px;display:flex;align-items:center;justify-content:center;background:#f0f7f3;position:relative;overflow:hidden}
.vzs7-product-img img{width:100%;height:100%;object-fit:cover}
.vzs7-product-placeholder{font-size:42px;line-height:1}
.vzs7-stock-low{position:absolute;top:8px;right:8px;background:#fff8ee;border:1px solid #f5c842;border-radius:10px;padding:2px 7px;font-size:10px;color:#b06000;font-weight:600}
.vzs7-stock-out{position:absolute;top:8px;right:8px;background:#fde8e8;border:1px solid #f5a8a8;border-radius:10px;padding:2px 7px;font-size:10px;color:#c0392b;font-weight:600}
.vzs7-product-info{padding:12px 12px 10px}
.vzs7-product-name{font-size:13px;font-weight:600;color:#1a1a1a;margin-bottom:2px}
.vzs7-product-unit{font-size:11px;color:#888}
.vzs7-product-price{font-size:16px;font-weight:700;color:#255946;margin:6px 0 10px}
.vzs7-product-price span{font-size:11px;font-weight:400;color:#888}

/* ── SHOP — Add to cart button ───────────────────────────────────────────── */
.vzs7-btn-add{width:100%;height:34px;background:#255946;border:none;border-radius:8px;color:#fff;font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .15s}
.vzs7-btn-add:hover{background:#1d4334}
.vzs7-btn-add:disabled{background:#c8c8c8;cursor:not-allowed}

/* ── SHOP — Qty stepper (shared by shop + cart) ──────────────────────────── */
.vzs7-qty-stepper{display:none;align-items:center;justify-content:space-between;height:34px;background:#edf4f1;border:1.5px solid #255946;border-radius:8px;overflow:hidden}
.vzs7-qty-btn{width:34px;height:34px;background:transparent;border:none;font-size:16px;font-weight:700;color:#255946;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .1s;font-family:inherit}
.vzs7-qty-btn:hover{background:#dff2e6}
.vzs7-qty-num{font-size:14px;font-weight:700;color:#255946;flex:1;text-align:center}

/* ── SHOP — Empty state ──────────────────────────────────────────────────── */
.vzs7-empty-state{text-align:center;padding:60px 20px;color:#aaa;grid-column:1/-1}
.vzs7-empty-icon{font-size:48px;margin-bottom:12px}

/* ── SHOP — Floating cart bar ────────────────────────────────────────────── */
.vzs7-cart-bar{position:fixed;bottom:0;left:0;right:0;background:#1d4334;padding:0 20px;height:56px;display:flex;align-items:center;justify-content:space-between;gap:12px;z-index:200;box-shadow:0 -3px 14px rgba(0,0,0,.2)}
.vzs7-cart-empty-msg{flex:1;text-align:center;font-size:13px;font-style:italic;color:rgba(255,255,255,.6)}
.vzs7-cart-filled{display:none;flex:1;align-items:center;gap:12px}
.vzs7-cart-filled.show{display:flex}
.vzs7-cart-bar-left{color:#fff;flex:1;min-width:0}
.vzs7-bar-items{font-size:13px;font-weight:600;color:#fff}
.vzs7-bar-total{font-size:12px;color:rgba(255,255,255,.85);margin-top:1px}
.vzs7-btn-view-cart{background:#fff;color:#1d4334;border:none;border-radius:8px;padding:10px 20px;font-size:13px;font-weight:700;cursor:pointer;flex-shrink:0;white-space:nowrap;font-family:inherit;transition:background .15s}
.vzs7-btn-view-cart:hover{background:#edf4f1}

/* ── SHOP — Mobile ───────────────────────────────────────────────────────── */
@media(max-width:600px){
  .vzs7-zone-bar{padding:8px 12px}
  .vzs7-delivery-panel{padding:14px 12px}
  .vzs7-dp-grid{grid-template-columns:1fr}
  .vzs7-shop-body{padding:16px 12px 110px}
  .vzs7-shop-header{flex-direction:column;align-items:flex-start;gap:6px}
  .vzs7-product-grid{grid-template-columns:repeat(2,1fr);gap:10px}
  .vzs7-product-img{height:90px}
  .vzs7-product-placeholder{font-size:32px}
  .vzs7-product-info{padding:8px 8px 6px}
  .vzs7-product-name{font-size:12px}
  .vzs7-product-price{font-size:14px;margin:4px 0 8px}
  .vzs7-btn-add{height:30px;font-size:11px}
  .vzs7-qty-stepper{height:30px}
  .vzs7-qty-btn{width:30px;height:30px;font-size:14px}
  .vzs7-cart-bar{padding:0 14px;height:52px}
  .vzs7-cart-empty-msg{font-size:11px}
  .vzs7-btn-view-cart{padding:8px 14px;font-size:12px}
}

/* ── CART — Body wrapper ─────────────────────────────────────────────────── */
.vzs7-cart-body{padding:28px 28px 60px;max-width:1000px;margin:0 auto}
@media(max-width:600px){.vzs7-cart-body{padding:16px 12px 48px}}

/* ── CART — Loading / error states ──────────────────────────────────────── */
.vzs7-cart-loading{text-align:center;padding:60px 20px;color:#aaa;font-size:14px}
.vzs7-cart-error{text-align:center;padding:40px 20px;color:#c0392b;font-size:13px}
.vzs7-cart-error a{color:#255946}

/* ── CART — Empty state ──────────────────────────────────────────────────── */
.vzs7-cart-empty{text-align:center;padding:60px 20px}
.vzs7-cart-empty .vzs7-empty-icon{font-size:52px;margin-bottom:14px}
.vzs7-empty-title{font-size:18px;font-weight:600;color:#1a1a1a;margin-bottom:8px}
.vzs7-empty-msg{font-size:13px;color:#888;margin-bottom:24px}
.vzs7-btn-shop-link{display:inline-flex;align-items:center;justify-content:center;width:auto;padding:0 28px;text-decoration:none}

/* ── CART — Two-column layout (items + summary) ──────────────────────────── */
.vzs7-cart-wrap{display:grid;grid-template-columns:1fr 340px;gap:28px;align-items:start}
@media(max-width:760px){.vzs7-cart-wrap{grid-template-columns:1fr}}

/* ── CART — Items column ─────────────────────────────────────────────────── */
.vzs7-cart-section-title{font-size:13px;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:.5px;margin-bottom:14px}
.vzs7-cart-item{background:#fff;border:1px solid #e8e8e8;border-radius:10px;padding:14px 16px;margin-bottom:10px;display:flex;align-items:center;justify-content:space-between;gap:16px;transition:border-color .15s}
.vzs7-cart-item:hover{border-color:#c0d9c8}
.vzs7-cart-item-oos{opacity:.7}
.vzs7-ci-info{flex:1;min-width:0}
.vzs7-ci-name{font-size:14px;font-weight:600;color:#1a1a1a;margin-bottom:2px}
.vzs7-ci-unit{font-size:11px;color:#888}
.vzs7-ci-oos-warn{font-size:11px;color:#c0392b;margin-top:4px;font-weight:500}
.vzs7-ci-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex-shrink:0}
.vzs7-ci-stepper{width:100px}
.vzs7-ci-subtotal{font-size:15px;font-weight:700;color:#255946}
.vzs7-ci-per{font-size:11px;color:#aaa}

/* ── CART — Summary panel ────────────────────────────────────────────────── */
.vzs7-cart-summary{background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:22px 20px;position:sticky;top:80px}
.vzs7-summary-title{font-size:15px;font-weight:600;color:#1a1a1a;margin-bottom:16px}
.vzs7-summary-row{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:#555;margin-bottom:10px}
.vzs7-delivery-tag{background:#edf4f1;color:#255946;font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px}
.vzs7-delivery-courier{background:#fff3e0;color:#b45309}
.vzs7-summary-divider{border:none;border-top:1px solid #e8e8e8;margin:12px 0}
.vzs7-summary-total{font-size:16px;font-weight:700;color:#1a1a1a;margin-bottom:0}
.vzs7-cart-continue{display:block;text-align:center;margin-top:14px;font-size:12px;color:#255946;text-decoration:none}
.vzs7-cart-continue:hover{text-decoration:underline}

/* ── CART — Mobile ───────────────────────────────────────────────────────── */
@media(max-width:600px){
  .vzs7-cart-item{flex-wrap:wrap;gap:10px}
  .vzs7-ci-right{flex-direction:row;align-items:center;gap:12px;width:100%}
  .vzs7-ci-subtotal{margin-left:auto}
  .vzs7-ci-per{display:none}
  .vzs7-ci-stepper{width:90px}
}

/* ── CHECKOUT — Body wrapper ─────────────────────────────────────────────────── */
.vzs7-checkout-body{padding:28px 28px 60px;max-width:1000px;margin:0 auto}
@media(max-width:600px){.vzs7-checkout-body{padding:16px 12px 48px}}

/* ── CHECKOUT — Payment failed state ─────────────────────────────────────────── */
.vzs7-checkout-failed{text-align:center;padding:60px 20px}
.vzs7-failed-icon{font-size:52px;margin-bottom:14px}
.vzs7-failed-title{font-size:18px;font-weight:600;color:#c0392b;margin-bottom:8px}
.vzs7-failed-msg{font-size:13px;color:#888;margin-bottom:24px;max-width:400px;margin-left:auto;margin-right:auto}

/* ── CHECKOUT — Item rows (compact, read-only) ───────────────────────────────── */
.vzs7-co-items{margin-bottom:20px}
.vzs7-co-item{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid #f0f0f0}
.vzs7-co-item:last-child{border-bottom:none}
.vzs7-co-item-total{font-size:14px;font-weight:600;color:#255946;flex-shrink:0;margin-left:12px}

/* ── CHECKOUT — Section labels ───────────────────────────────────────────────── */
.vzs7-co-section-label{font-size:11px;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px;margin-top:20px}
.vzs7-optional{font-weight:400;color:#bbb;text-transform:none;letter-spacing:0}

/* ── CHECKOUT — Delivery display ─────────────────────────────────────────────── */
.vzs7-co-delivery{display:flex;align-items:center;gap:10px;background:#f8fdf9;border:1px solid #c0d9c8;border-radius:8px;padding:12px 14px;margin-bottom:4px}
.vzs7-co-del-icon{font-size:20px;flex-shrink:0}
.vzs7-co-del-main{font-size:13px;font-weight:600;color:#1a1a1a}
.vzs7-co-del-sub{font-size:11px;color:#888;margin-top:1px}

/* ── CHECKOUT — Notes field ──────────────────────────────────────────────────── */
.vzs7-co-notes{width:100%;border:1px solid #ddd;border-radius:8px;padding:10px 12px;font-size:13px;font-family:inherit;resize:vertical;min-height:72px;outline:none;transition:border-color .15s;background:#fff;color:#1a1a1a}
.vzs7-co-notes:focus{border-color:#255946;box-shadow:0 0 0 3px rgba(37,89,70,.1)}

/* ── CHECKOUT — Left column ──────────────────────────────────────────────────── */
.vzs7-checkout-left{min-width:0}

/* ── CHECKOUT — Pay note ─────────────────────────────────────────────────────── */
.vzs7-co-pay-note{font-size:11px;color:#aaa;text-align:center;margin-top:10px;line-height:1.5}

/* ── CHECKOUT — Mobile ───────────────────────────────────────────────────────── */
@media(max-width:600px){
  .vzs7-co-item-total{font-size:13px}
  .vzs7-co-notes{font-size:12px}
}

/* ── ORDERS — Body wrapper ───────────────────────────────────────────────────── */
.vzs7-orders-body{padding:28px 28px 60px;max-width:760px;margin:0 auto}
@media(max-width:600px){.vzs7-orders-body{padding:16px 12px 48px}}

/* ── ORDERS — Success banner ─────────────────────────────────────────────────── */
.vzs7-order-success-banner{display:flex;align-items:flex-start;gap:14px;background:#edf4f1;border:1.5px solid #9ec4b5;border-radius:12px;padding:18px 20px;margin-bottom:24px}
.vzs7-order-verifying-banner{display:flex;align-items:flex-start;gap:14px;background:#fff8e6;border:1.5px solid #f5d89a;border-radius:12px;padding:18px 20px;margin-bottom:24px}
.vzs7-order-verifying-banner .vzs7-osb-title{color:#92640a}
.vzs7-order-verifying-banner .vzs7-osb-sub{color:#7a5210}
.vzs7-osb-icon{font-size:28px;flex-shrink:0;line-height:1}
.vzs7-osb-title{font-size:15px;font-weight:600;color:#1a5e3a;margin-bottom:4px}
.vzs7-osb-sub{font-size:12px;color:#4a7c5e;line-height:1.5}

/* ── ORDERS — List header ────────────────────────────────────────────────────── */
.vzs7-orders-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.vzs7-orders-title{font-size:16px;font-weight:600;color:#1a1a1a}
.vzs7-orders-shop-link{font-size:12px;color:#255946;text-decoration:none}
.vzs7-orders-shop-link:hover{text-decoration:underline}

/* ── ORDERS — Order card (details/summary) ───────────────────────────────────── */
.vzs7-order-card{background:#fff;border:1px solid #e8e8e8;border-radius:12px;margin-bottom:12px;overflow:hidden;transition:box-shadow .2s}
.vzs7-order-card:hover{box-shadow:0 2px 12px rgba(0,0,0,.08)}
.vzs7-order-card-new{border-color:#9ec4b5;box-shadow:0 0 0 3px rgba(37,89,70,.08)}
.vzs7-order-card summary{list-style:none}
.vzs7-order-card summary::-webkit-details-marker{display:none}

.vzs7-order-summary{display:flex;align-items:center;gap:12px;padding:16px 18px;cursor:pointer;user-select:none}
.vzs7-order-summary:hover{background:#fafafa}
.vzs7-order-meta{flex:1;min-width:0}
.vzs7-order-id{font-size:14px;font-weight:600;color:#1a1a1a}
.vzs7-order-date{font-size:11px;color:#888;margin-top:2px}
.vzs7-order-right{display:flex;flex-direction:column;align-items:flex-end;gap:5px;flex-shrink:0}
.vzs7-order-total{font-size:15px;font-weight:700;color:#255946}
.vzs7-order-chevron{font-size:16px;color:#bbb;flex-shrink:0;transition:transform .2s}
.vzs7-order-card[open] .vzs7-order-chevron{transform:rotate(180deg)}

/* ── ORDERS — Status badges ──────────────────────────────────────────────────── */
.vzs7-order-status-badge{display:inline-block;font-size:10px;font-weight:600;padding:2px 8px;border-radius:10px;white-space:nowrap}
.vzs7-status-pending{background:#fff8e6;color:#b06000}
.vzs7-status-processing{background:#edf4f1;color:#1a5e3a}
.vzs7-status-hold{background:#fff3e0;color:#b45309}
.vzs7-status-completed{background:#e8f5e9;color:#255946}
.vzs7-status-cancelled{background:#f5f5f5;color:#888}
.vzs7-status-failed{background:#fdf3f2;color:#c0392b}
.vzs7-status-refunded{background:#f3f0ff;color:#6d28d9}
.vzs7-status-other{background:#f0f0f0;color:#666}

/* ── ORDERS — Detail panel ───────────────────────────────────────────────────── */
.vzs7-order-detail{padding:0 18px 18px;border-top:1px solid #f0f0f0}
.vzs7-od-section-label{font-size:10px;font-weight:600;color:#aaa;text-transform:uppercase;letter-spacing:.6px;margin:16px 0 8px}

/* Items */
.vzs7-od-items{border:1px solid #f0f0f0;border-radius:8px;overflow:hidden}
.vzs7-od-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;gap:12px}
.vzs7-od-item+.vzs7-od-item{border-top:1px solid #f5f5f5}
.vzs7-od-fee{background:#fafafa}
.vzs7-od-item-left{flex:1;min-width:0}
.vzs7-od-item-name{font-size:13px;font-weight:500;color:#1a1a1a}
.vzs7-od-item-unit{font-size:11px;color:#888;margin-top:2px}
.vzs7-od-item-sub{font-size:13px;font-weight:600;color:#255946;flex-shrink:0}

/* Total row */
.vzs7-od-total-row{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#f8fdf9;border:1px solid #d4eadd;border-radius:8px;margin-top:8px;font-size:14px;font-weight:700;color:#1a1a1a}
.vzs7-od-total-row span:last-child{color:#255946}

/* Delivery + notes */
.vzs7-od-delivery{font-size:13px;color:#1a1a1a;background:#f8fdf9;border:1px solid #d4eadd;border-radius:8px;padding:10px 12px}
.vzs7-od-notes{font-size:12px;color:#555;background:#fafafa;border:1px solid #ebebeb;border-radius:8px;padding:10px 12px;line-height:1.5;white-space:pre-wrap}

/* Status notes */
.vzs7-od-pending-note{font-size:12px;color:#b06000;background:#fff8e6;border:1px solid #f5d89a;border-radius:8px;padding:10px 12px;margin-top:14px;line-height:1.5}
.vzs7-od-cancelled-note{font-size:12px;color:#c0392b;background:#fdf3f2;border:1px solid #f5c6c2;border-radius:8px;padding:10px 12px;margin-top:14px;line-height:1.5}
.vzs7-od-cancelled-note a{color:#255946}

/* ── ORDERS — Mobile ─────────────────────────────────────────────────────────── */
@media(max-width:500px){
  .vzs7-order-summary{padding:13px 14px;gap:8px}
  .vzs7-order-id{font-size:13px}
  .vzs7-order-total{font-size:14px}
  .vzs7-order-detail{padding:0 14px 14px}
}
