.vcom-application-page .wp-block-post-title{display:none}.vcom-app{--green:#6ba24a;--lime:#8bc63f;--orange:#f1713d;--ink:#19382c;width:100%;max-width:none;margin:0;border:0;background:#fff;color:var(--ink);font-family:Arial,sans-serif}.vcom-header{display:flex;align-items:center;justify-content:space-between;min-height:108px;padding:18px 28px}.vcom-transparent-logo{display:block;width:220px;max-width:100%;height:auto;object-fit:contain;background:transparent}.vcom-header-details{display:flex;align-items:center;gap:18px;flex-wrap:wrap;justify-content:flex-end}.vcom-header-details strong{color:var(--green)}.vcom-header-details a{color:var(--orange);font-weight:700;text-decoration:none}.vcom-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px 28px;border-top:1px solid #eee;border-bottom:1px solid #eee}.vcom-nav a{display:flex;align-items:center;justify-content:center;min-height:54px;padding:14px;border:1px solid var(--green);border-radius:7px;color:var(--green);font-weight:700;text-align:center;text-decoration:none}.vcom-nav a.active,.vcom-nav a:hover{background:var(--green);color:#fff}.vcom-intro{padding:28px;background:#fffdf8}.vcom-intro h1{display:block!important;margin:0 0 8px;font-size:clamp(30px,4vw,46px);line-height:1.1;color:var(--ink)}.vcom-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(360px,.85fr);align-items:start;gap:24px;padding:0 28px 32px;background:#fffdf8}.vcom-primary-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 10px}.vcom-child-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}.vcom-child-filters[hidden]{display:none!important}.vcom-primary-filters button,.vcom-child-filters button{min-height:42px;padding:10px 15px;border:1px solid #ccd5c7;background:#fff;color:var(--ink);border-radius:5px;cursor:pointer;font:600 14px Arial;transition:background-color .2s,border-color .2s,color .2s}.vcom-primary-filters button{min-height:48px;font-size:16px}.vcom-child-filters button{flex:1 1 130px}.vcom-primary-filters button.active,.vcom-primary-filters button:hover,.vcom-child-filters button.active,.vcom-child-filters button:hover{background:var(--green);color:#fff;border-color:var(--green)}.vcom-search,.vcom-form input,.vcom-form textarea,.vcom-form select{box-sizing:border-box;width:100%;min-height:46px;padding:12px;border:1px solid #ccd5c7;border-radius:6px;background:#fff;font:inherit}.vcom-search{min-height:50px;margin-bottom:8px}.vcom-count{color:#687169;font-size:14px}.vcom-products{max-height:none;overflow:visible;border:1px solid #e1e6de;border-radius:7px;background:#fff}.vcom-product{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:86px;padding:15px;border-bottom:1px solid #e7ebe4}.vcom-product:last-child{border:0}.vcom-product[hidden]{display:none}.vcom-product h3{margin:0 0 6px;font:700 17px Arial}.vcom-product p{margin:0;color:#687169;font-size:14px}.vcom-qty{display:grid;grid-template-columns:36px 45px 36px;border:1px solid #ccd5c7;border-radius:5px;overflow:hidden;flex:0 0 auto}.vcom-qty button,.vcom-qty input{width:100%;height:40px;padding:0;border:0;border-radius:0;background:#fff;text-align:center}.vcom-qty input{border-left:1px solid #ccd5c7;border-right:1px solid #ccd5c7}.vcom-checkout{align-self:start;padding:22px;border:1px solid #e1e6de;border-radius:8px;background:#fff;position:sticky;top:24px}.vcom-checkout h2{margin:0 0 16px;font:700 23px/1.25 Georgia,"Times New Roman",serif;overflow-wrap:anywhere}.vcom-form label{display:block;margin-bottom:13px;font-size:14px;font-weight:700}.vcom-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.vcom-form textarea{min-height:92px}.vcom-radio{font-weight:400!important}.vcom-radio input{width:auto;min-height:0;margin-right:8px}.vcom-basket-first{margin-bottom:24px;padding:12px 14px;border:1px solid #e1e6de;border-radius:7px;background:#fffdf8}.vcom-customer-heading{padding-top:20px;border-top:1px solid #e1e6de}.vcom-lines>div,.vcom-total{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #eee}.vcom-total{margin-top:12px;border-top:2px solid var(--green);border-bottom:0;font-size:20px}.vcom-total strong:last-child{color:var(--orange)}.vcom-submit{width:100%;min-height:50px;margin-top:18px;padding:14px;border:0;border-radius:7px;background:var(--orange);color:#fff;font-size:17px;font-weight:700;cursor:pointer}.vcom-submit:disabled{opacity:.6}.vcom-message:not(:empty){margin:14px 0 0;padding:12px;border-radius:6px;background:#f3f8ef;color:var(--ink);font-weight:700}.vcom-empty{color:#687169}
@media(max-width:900px){.vcom-layout{grid-template-columns:1fr;gap:20px}.vcom-products{max-height:none;overflow:visible}.vcom-checkout{position:static}.vcom-intro h1{font-size:clamp(30px,7vw,42px)}}
@media(max-width:600px){.vcom-header{min-height:84px;gap:14px;padding:14px}.vcom-transparent-logo{width:145px;max-height:68px}.vcom-header-details{flex-direction:column;align-items:flex-end;gap:5px;font-size:13px}.vcom-nav{gap:8px;padding:12px 14px}.vcom-nav a{min-height:48px;padding:9px 6px;font-size:14px}.vcom-intro{padding:22px 14px}.vcom-intro h1{font-size:32px}.vcom-layout{padding:0 12px 24px}.vcom-primary-filters button{min-width:0;padding:10px 5px;font-size:14px}.vcom-child-filters button{flex:1 1 46%;padding:9px 7px;font-size:13px}.vcom-fields{grid-template-columns:1fr}.vcom-checkout{padding:16px}.vcom-product{gap:10px;padding:12px}.vcom-product h3{font-size:16px}.vcom-product p{font-size:13px}.vcom-checkout h2{font-size:22px}.vcom-basket-first{padding:10px}.vcom-form input,.vcom-form textarea,.vcom-form select{font-size:16px}}
@media(max-width:380px){.vcom-header{align-items:flex-start}.vcom-transparent-logo{width:125px}.vcom-header-details{font-size:12px}.vcom-intro h1{font-size:28px}.vcom-product{align-items:flex-start;flex-direction:column}.vcom-qty{align-self:flex-end}.vcom-primary-filters button{font-size:13px}}

/* Sheet-driven category and unit controls. */
.vcom-primary-filters{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}
.vcom-product-info{min-width:0;flex:1}
.vcom-unit-label{display:flex!important;align-items:center;gap:8px;margin:10px 0 0!important;color:#687169;font-size:13px!important;font-weight:600!important}
.vcom-unit-select{width:auto!important;min-width:170px;min-height:38px!important;padding:8px!important}
@media(max-width:600px){.vcom-primary-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.vcom-unit-label{align-items:flex-start;flex-direction:column}.vcom-unit-select{width:100%!important;min-width:0}}

/* Keep typography consistent regardless of parent-theme block styles. */
.vcom-app,
.vcom-app *,
.vcom-app *::before,
.vcom-app *::after{
	font-family:Arial,Helvetica,sans-serif!important;
}

/* Custom Mix Bowl builder. */
.vcom-mix-builder{padding:22px;border:1px solid #e1e6de;border-radius:8px;background:#fff}
.vcom-mix-builder[hidden]{display:none!important}
.vcom-mix-builder h2{margin:0 0 20px;color:var(--ink);font-size:25px}
.vcom-mix-builder fieldset{margin:0 0 22px;padding:0;border:0}
.vcom-mix-builder legend{display:block;width:100%;margin:0 0 12px;font-size:18px;font-weight:700}
.vcom-mix-sizes,.vcom-mix-fruits{display:grid;gap:10px}
.vcom-mix-sizes{grid-template-columns:repeat(3,minmax(0,1fr))}
.vcom-mix-fruits{grid-template-columns:repeat(2,minmax(0,1fr))}
.vcom-mix-sizes label,.vcom-mix-fruits label{position:relative;display:block;cursor:pointer}
.vcom-mix-sizes input,.vcom-mix-fruits input{position:absolute;opacity:0;pointer-events:none}
.vcom-mix-sizes span,.vcom-mix-fruits span{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:11px 14px;border:1px solid #ccd5c7;border-radius:6px;background:#fff;color:var(--ink);font-weight:600}
.vcom-mix-sizes input:checked+span,.vcom-mix-fruits input:checked+span{border-color:var(--green);background:var(--green);color:#fff}
.vcom-mix-size-copy{display:flex!important;min-height:0!important;padding:0!important;border:0!important;background:transparent!important;flex-direction:column;align-items:flex-start!important;gap:2px}
.vcom-mix-size-copy small{font-size:12px;font-weight:400;opacity:.8}
.vcom-mix-fruits input:disabled+span{opacity:.45;cursor:not-allowed}
.vcom-mix-help{color:#687169;font-size:14px}
.vcom-add-mix{width:100%;min-height:50px;padding:13px;border:0;border-radius:7px;background:var(--orange);color:#fff;font-size:16px;font-weight:700;cursor:pointer}
.vcom-add-mix:disabled{opacity:.5;cursor:not-allowed}
.vcom-mix-message:not(:empty){margin:12px 0 0;color:var(--green);font-weight:700}
.vcom-mix-line{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:10px!important}
.vcom-mix-line span{flex:1;min-width:0}
.vcom-remove-line{box-sizing:border-box;flex:0 0 34px;width:34px;height:34px;min-height:34px;padding:0;border:1px solid #e2b5a2;border-radius:50%;background:#fff;color:var(--orange);font-size:20px;line-height:1;cursor:pointer}
.vcom-remove-line:hover,.vcom-remove-line:focus{border-color:var(--orange);background:var(--orange);color:#fff}
@media(max-width:600px){.vcom-mix-builder{padding:16px}.vcom-mix-sizes{grid-template-columns:1fr}.vcom-mix-fruits{grid-template-columns:1fr 1fr}.vcom-mix-fruits span{padding:9px;font-size:13px}}

/* Add-to-basket catalogue and independent basket quantities. */
.vcom-add-product{flex:0 0 auto;min-width:125px;min-height:42px;padding:10px 14px;border:1px solid var(--green);border-radius:6px;background:#fff;color:var(--green);font-size:14px;font-weight:700;cursor:pointer}
.vcom-add-product:hover,.vcom-add-product:focus{background:var(--green);color:#fff}
.vcom-product{display:grid;grid-template-columns:minmax(180px,1fr) minmax(220px,.9fr) auto;align-items:center;gap:18px}
.vcom-product-title{margin:0!important}
.vcom-product-variation{min-width:0}
.vcom-product-variation .vcom-unit-label{margin-bottom:5px}
.vcom-add-product{display:inline-flex;align-items:center;justify-content:center;width:auto;white-space:nowrap;transition:background-color .2s ease,color .2s ease}
@media(max-width:760px){.vcom-product{grid-template-columns:minmax(0,1fr) auto;gap:10px 12px}.vcom-product-title{grid-column:1/-1}.vcom-product-variation{grid-column:1;min-width:0}.vcom-unit-select{width:100%!important;min-width:0}.vcom-add-product{grid-column:2;grid-row:2;min-width:112px}}
@media(max-width:420px){.vcom-product{grid-template-columns:1fr;padding:12px 10px}.vcom-product-title{grid-column:1;font-size:15px!important}.vcom-product-variation{grid-column:1}.vcom-unit-label{width:100%}.vcom-add-product{grid-column:1;grid-row:auto;width:100%;min-width:0}}
.vcom-basket-product-line{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:10px!important}
.vcom-basket-product-line>span{min-width:0;overflow-wrap:anywhere}
.vcom-basket-qty{display:grid;grid-template-columns:30px 38px 30px;border:1px solid #ccd5c7;border-radius:5px;overflow:hidden}
.vcom-basket-qty button,.vcom-basket-qty input{box-sizing:border-box;width:100%;height:34px;min-height:34px!important;margin:0;padding:0!important;border:0;border-radius:0;background:#fff;text-align:center;font-size:14px}
.vcom-basket-qty input{border-right:1px solid #ccd5c7!important;border-left:1px solid #ccd5c7!important;-moz-appearance:textfield}
.vcom-basket-qty input::-webkit-inner-spin-button,.vcom-basket-qty input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}
@media(max-width:600px){.vcom-add-product{min-width:112px;padding:9px 10px}.vcom-basket-product-line,.vcom-mix-line{grid-template-columns:minmax(90px,1fr) auto auto auto;gap:6px!important}.vcom-basket-qty{grid-template-columns:27px 34px 27px}.vcom-remove-line{width:30px;height:30px;min-height:30px}}

/* WooCommerce-style delivery address fields. */
.vcom-address-fields,.vcom-location-picker{margin:4px 0 18px;padding:16px;border:1px solid #e1e6de;border-radius:7px;background:#fffdf8}
.vcom-address-fields legend,.vcom-location-picker legend{padding:0 7px;color:var(--ink);font-size:17px;font-weight:700}
.vcom-address-help{margin:2px 0 0;color:#687169;font-size:13px;line-height:1.45}
.vcom-use-location{width:100%;min-height:46px;margin:2px 0 8px;padding:11px 14px;border:1px solid var(--green);border-radius:6px;background:#fff;color:var(--green);font-size:14px;font-weight:700;cursor:pointer}
.vcom-use-location:hover,.vcom-use-location:focus{background:var(--green);color:#fff}.vcom-use-location:disabled{opacity:.65;cursor:wait}
.vcom-location-status{min-height:20px;margin:0 0 8px;color:var(--orange);font-size:13px;font-weight:700}.vcom-location-status.is-valid{color:var(--green)}
.vcom-delivery-map{width:100%;height:320px;margin:10px 0;border:1px solid #ccd5c7;border-radius:7px;overflow:hidden;z-index:1}
.vcom-delivery-map[hidden]{display:none!important}
@media(max-width:600px){.vcom-delivery-map{height:280px}}
.vcom-map-search{margin:12px 0 0}.vcom-map-search[hidden]{display:none!important}.vcom-map-search>label{margin-bottom:6px}.vcom-map-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.vcom-map-search-row button{min-width:84px;border:0;border-radius:6px;background:var(--green);color:#fff;font-weight:700;cursor:pointer}.vcom-map-search-row button:disabled{opacity:.65}.vcom-map-results{display:grid;gap:6px;margin:8px 0}.vcom-map-results p{margin:5px 0;color:#687169;font-size:13px}.vcom-map-result{width:100%;padding:10px;border:1px solid #ccd5c7;border-radius:5px;background:#fff;color:var(--ink);text-align:left;cursor:pointer}.vcom-map-result:hover,.vcom-map-result:focus{border-color:var(--green);background:#f3f8ef}
@media(max-width:420px){.vcom-map-search-row{grid-template-columns:1fr}.vcom-map-search-row button{min-height:44px}}

/* Compact sheet-driven subcategory selector. */
.vcom-child-filter-control{margin:0 0 14px}
.vcom-child-filter-control[hidden]{display:none!important}
.vcom-child-filter-control label{display:block;margin:0 0 6px;color:var(--ink);font-size:14px;font-weight:700}
.vcom-child-select{box-sizing:border-box;width:100%;min-height:48px;padding:11px 40px 11px 12px;border:1px solid #ccd5c7;border-radius:6px;background:#fff;color:var(--ink);font:600 15px Arial,sans-serif;cursor:pointer}
@media(max-width:600px){.vcom-child-select{font-size:16px}}

/* Fruit subcategories remain visible as tabs; vegetable subcategories use the dropdown above. */
.vcom-fruit-subcategory-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.vcom-fruit-subcategory-tabs[hidden]{display:none!important}
.vcom-fruit-subcategory-tabs button{min-height:42px;padding:10px 15px;border:1px solid #ccd5c7;border-radius:5px;background:#fff;color:var(--ink);font-size:14px;font-weight:600;cursor:pointer}
.vcom-fruit-subcategory-tabs button:hover,.vcom-fruit-subcategory-tabs button:focus,.vcom-fruit-subcategory-tabs button.active{border-color:var(--green);background:var(--green);color:#fff}
.vcom-fruit-grandchild-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:-4px 0 14px;padding:10px;border:1px solid #e1e6de;border-radius:6px;background:#f7faf5}
.vcom-fruit-grandchild-tabs[hidden]{display:none!important}
.vcom-fruit-grandchild-tabs button{min-height:38px;padding:8px 13px;border:1px solid #ccd5c7;border-radius:5px;background:#fff;color:var(--ink);font:600 13px Arial;cursor:pointer}
.vcom-fruit-grandchild-tabs button:hover,.vcom-fruit-grandchild-tabs button:focus,.vcom-fruit-grandchild-tabs button.active{border-color:var(--green);background:var(--green);color:#fff}
@media(max-width:600px){.vcom-fruit-subcategory-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}.vcom-fruit-subcategory-tabs button{flex:0 0 auto;white-space:nowrap}}
@media(max-width:600px){.vcom-fruit-grandchild-tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch}.vcom-fruit-grandchild-tabs button{flex:0 0 auto;white-space:nowrap}}

/* Fruits-only Custom Mix Bowl launcher. */
.vcom-mix-promo{box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;margin:0 0 14px;padding:14px 16px;border:1px solid #b8c99e;border-radius:6px;background:#edf3e3;color:var(--ink);text-align:left;cursor:pointer}
.vcom-mix-promo[hidden]{display:none!important}.vcom-mix-promo strong,.vcom-mix-promo small{display:block}.vcom-mix-promo strong{font-size:16px}.vcom-mix-promo small{margin-top:4px;color:#687169}.vcom-mix-promo>span:last-child{flex:0 0 auto;color:var(--green);font-weight:700}.vcom-mix-promo:hover,.vcom-mix-promo:focus{border-color:var(--green);background:#e4edd6}.vcom-mix-builder-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.vcom-close-mix{flex:0 0 38px;width:38px;height:38px;border:1px solid #e2b5a2;border-radius:50%;background:#fff;color:var(--orange);font-size:25px;line-height:1;cursor:pointer}.vcom-close-mix:hover,.vcom-close-mix:focus{background:var(--orange);color:#fff}@media(max-width:600px){.vcom-mix-promo{align-items:flex-start;flex-direction:column;gap:9px}.vcom-mix-promo>span:last-child{align-self:flex-end}}

.vcom-nav{display:none!important}
/* Custom Mix is accessed from “Make personalized fruit bowl”.
   Hide only its duplicate subcategory tab. */
.vcom-fruit-subcategory-tabs
button[data-fruit-child-filter="custom-mix"],

.vcom-fruit-subcategory-tabs
button[data-fruit-child-filter="custom-mix-bowl"],

.vcom-fruit-subcategory-tabs
button[data-fruit-child-filter="cut-fruit-bowl-custom-mix"] {
    display: none !important;
}

/* Keep the catalogue inside the mobile viewport when fruit navigation is open. */
.vcom-catalog{min-width:0}

@media(max-width:600px){
	/* Fruit navigation uses a compact grid instead of a clipped horizontal strip. */
	.vcom-fruit-subcategory-tabs,
	.vcom-fruit-grandchild-tabs{
		display:grid;
		grid-template-columns:repeat(2,minmax(0,1fr));
		width:100%;
		overflow:visible;
		padding-bottom:0;
	}
	.vcom-fruit-subcategory-tabs button,
	.vcom-fruit-grandchild-tabs button{
		box-sizing:border-box;
		width:100%;
		min-width:0;
		white-space:normal;
		line-height:1.25;
		text-align:center;
	}
	.vcom-fruit-grandchild-tabs{
		padding:8px;
	}
	.vcom-mix-promo{
		min-width:0;
		align-items:flex-start;
		flex-direction:row;
		gap:8px;
	}
	.vcom-mix-promo>span:first-child{min-width:0;flex:1 1 auto}
	.vcom-mix-promo strong{font-size:14px;white-space:nowrap}
	.vcom-mix-promo small{font-size:12px}
	.vcom-mix-promo>span:last-child{
		align-self:flex-start;
		white-space:nowrap;
		font-size:13px;
	}
}

@media(max-width:360px){
	.vcom-fruit-subcategory-tabs,
	.vcom-fruit-grandchild-tabs{
		grid-template-columns:1fr;
	}
	.vcom-mix-promo{padding:12px 10px;gap:6px}
	.vcom-mix-promo strong{font-size:13px}
	.vcom-mix-promo>span:last-child{font-size:12px}
}

/* 3.2.2: two category filters and inline mobile weight controls. */
.vcom-primary-filters{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:760px){
  .vcom-product-variation .vcom-unit-label{display:flex!important;flex-direction:row!important;align-items:center!important;gap:10px;width:100%;white-space:nowrap}
  .vcom-product-variation .vcom-unit-select{flex:1 1 0;width:0!important;min-width:0;max-width:100%;box-sizing:border-box}
}

/* Main category tabs remain on one row. */
.vcom-primary-filters{grid-template-columns:repeat(3,minmax(0,1fr))}

/* 3.2.5: compact mobile product rows with aligned controls. */
@media(max-width:760px){
  .vcom-product{grid-template-columns:minmax(0,1fr) 124px;gap:10px;padding:14px 12px;align-items:center;min-height:0}
  .vcom-product .vcom-product-title{grid-column:1/-1;margin:0!important;font-size:16px!important;line-height:1.4;overflow-wrap:anywhere}
  .vcom-product .vcom-product-variation{grid-column:1;grid-row:2;min-width:0;width:100%}
  .vcom-product-variation .vcom-unit-label{display:block!important;margin:0!important;width:100%}
  .vcom-weight-caption{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  .vcom-product-variation .vcom-unit-select{width:100%!important;min-width:0;max-width:100%;height:44px;min-height:44px!important;margin:0;padding:8px 26px 8px 10px!important;font-size:14px;border:1px solid #ccd5c7;border-radius:6px;background-color:#fff;box-sizing:border-box;color:var(--ink)}
  .vcom-product .vcom-add-product{grid-column:2;grid-row:2;justify-self:stretch;width:100%;min-width:0;height:44px;min-height:44px;margin:0;padding:8px;font-size:14px;line-height:1.3;box-sizing:border-box;background:var(--green);color:#fff;border-radius:6px}
  .vcom-product .vcom-add-product:hover,.vcom-product .vcom-add-product:focus{background:#568739;border-color:#568739}
}
@media(max-width:350px){
  .vcom-product{grid-template-columns:minmax(0,1fr) 110px;gap:8px;padding:12px 10px}
  .vcom-product .vcom-add-product{font-size:13px;padding:8px 5px}
  .vcom-product-variation .vcom-unit-select{font-size:13px;padding-left:8px!important}
}

/* 3.2.7: desktop controls and always-accessible mobile basket shortcut. */
.vcom-app .vcom-weight-caption{display:none!important}
@media(min-width:761px){
 .vcom-product{grid-template-columns:minmax(0,1fr) minmax(150px,220px) 134px;gap:12px}
 .vcom-product-variation .vcom-unit-label{display:block!important;margin:0!important}
 .vcom-product-variation .vcom-unit-select{box-sizing:border-box;width:100%!important;min-width:0;height:44px;min-height:44px!important;margin:0;padding:8px 30px 8px 10px!important;border:1px solid #ccd5c7;border-radius:6px;background:#fff;font-size:14px;color:var(--ink)}
 .vcom-product .vcom-add-product{box-sizing:border-box;width:100%;min-width:0;height:44px;padding:8px;background:var(--green);color:#fff}
}
.vcom-mobile-cart-bar{display:none}
#vcom-basket{scroll-margin-top:76px}
@media(max-width:900px){
 .vcom-mobile-cart-bar{display:flex;justify-content:flex-end;position:sticky;top:0;z-index:100;background:#fff;padding:8px 12px;border-bottom:1px solid #e1e6de;box-shadow:0 2px 5px #19382c12}
 .vcom-mobile-cart{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:8px 12px;box-sizing:border-box;border-radius:6px;background:var(--green);color:#fff!important;text-decoration:none;font-size:14px;font-weight:700}
 .vcom-cart-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 5px;box-sizing:border-box;border-radius:12px;background:#fff;color:var(--ink);font-size:13px}
 body.admin-bar .vcom-mobile-cart-bar{top:32px}
}
@media(min-width:601px) and (max-width:782px){body.admin-bar .vcom-mobile-cart-bar{top:46px}}
@media(max-width:600px){body.admin-bar .vcom-mobile-cart-bar{top:0}}

/* 3.2.8: return to catalogue from the mobile checkout shortcut bar. */
#vcom-products{scroll-margin-top:90px}
@media(max-width:900px){
 .vcom-mobile-cart-bar{justify-content:space-between;align-items:center;gap:8px}
 .vcom-continue-shopping{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 10px;box-sizing:border-box;border:1px solid var(--green);border-radius:6px;color:var(--ink)!important;background:#fff;text-decoration:none;font-size:13px;font-weight:700;text-align:center;line-height:1.25;flex:1;min-width:0}
 .vcom-mobile-cart{justify-content:center;flex:1.15;min-width:0;padding:8px;gap:6px;font-size:13px;line-height:1.25}
 .vcom-mobile-cart svg,.vcom-cart-count{flex-shrink:0}
 .vcom-mobile-cart>span:not(.vcom-cart-count){text-align:center}
 body.admin-bar #vcom-products,body.admin-bar #vcom-basket{scroll-margin-top:122px}
}
@media(max-width:600px){body.admin-bar #vcom-products,body.admin-bar #vcom-basket{scroll-margin-top:90px}}

/* Uniform checkout controls, including native mobile date inputs. */
.vcom-form label>input:not([type="hidden"]):not([type="radio"]):not([type="checkbox"]),.vcom-form label>select{box-sizing:border-box;min-width:0;max-width:100%;height:46px;min-height:46px;padding:10px 12px;font-size:16px;line-height:24px}
.vcom-form input[type="date"]{display:block;width:100%;-webkit-appearance:none;appearance:none}
.vcom-form input[type="date"]::-webkit-date-and-time-value{text-align:left;min-height:24px}
.vcom-fields>label{min-width:0}
.vcom-form textarea[name="address_1"]{box-sizing:border-box;width:100%;min-height:96px;padding:12px;font-size:16px;line-height:1.5;resize:vertical}

/* Cross-device sizing and narrow-screen basket layout. */
.vcom-app{-webkit-text-size-adjust:100%;text-size-adjust:100%;min-width:0}
.vcom-layout>*{min-width:0}
.vcom-form fieldset{min-width:0;box-sizing:border-box}
.vcom-form input,.vcom-form select,.vcom-form textarea{max-width:100%}
.vcom-mobile-cart:focus-visible,.vcom-continue-shopping:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
@media(max-width:600px){
 .vcom-map-search-row input{min-width:0;font-size:16px}
 .vcom-product-variation .vcom-unit-select{font-size:16px}
 .vcom-mobile-cart-bar{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}
 .vcom-layout{padding-bottom:max(24px,env(safe-area-inset-bottom))}
}
@media(max-width:420px){
 .vcom-basket-product-line,.vcom-mix-line{grid-template-columns:minmax(0,1fr) auto auto;gap:8px!important}
 .vcom-basket-product-line>span,.vcom-mix-line>span{grid-column:1/-1;grid-row:1;overflow-wrap:anywhere}
 .vcom-basket-qty{grid-column:1;grid-row:2;justify-self:start}
 .vcom-basket-product-line>strong,.vcom-mix-line>strong{grid-column:2;grid-row:2;white-space:nowrap}
 .vcom-basket-product-line>.vcom-remove-line,.vcom-mix-line>.vcom-remove-line{grid-column:3;grid-row:2}
}

.vcom-language-control{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:10px 14px;background:#fff}
.vcom-language-control label{font-size:14px}
.vcom-language-control select{box-sizing:border-box;min-height:44px;max-width:160px;padding:8px 12px;border:1px solid #ccd5c7;border-radius:6px;background:#fff;font-size:16px}
.vcom-app[data-language="ml"],.vcom-app[data-language="ml"] *{font-family:"Noto Sans Malayalam","Nirmala UI",Kartika,Arial,sans-serif!important}
.vcom-app[data-language="ml"] .vcom-product .vcom-add-product{white-space:normal;height:auto;min-height:44px}
.vcom-app[data-language="ml"] .vcom-mobile-cart-bar{align-items:stretch}
.vcom-app[data-language="ml"] .vcom-mobile-cart,.vcom-app[data-language="ml"] .vcom-continue-shopping{font-size:12px;line-height:1.5}
.vcom-app[data-language="ml"] .vcom-intro h1{line-height:1.4}
.vcom-app[data-language="ml"] #vcom-basket,.vcom-app[data-language="ml"] #vcom-products{scroll-margin-top:120px}

/* Compact language selector integrated into the existing brand header. */
.vcom-header .vcom-language-control{padding:0;background:transparent;gap:0;flex:0 0 auto}
.vcom-header .vcom-language-control label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.vcom-header .vcom-language-control select{width:124px;max-width:100%;height:44px;min-height:44px;margin:0;padding:6px 24px 6px 10px;font-size:16px;line-height:1.4;color:var(--ink);border-color:#ccd5c7;border-radius:6px;background-color:#fff;cursor:pointer}
.vcom-header .vcom-language-control select:focus-visible{outline:2px solid var(--green);outline-offset:2px}
@media(max-width:600px){
 .vcom-header{align-items:center;gap:10px;padding-top:10px;padding-bottom:10px}
 .vcom-header .vcom-brand{min-width:0;flex:1 1 auto}
 .vcom-header-details{flex:0 0 auto;gap:4px}
 .vcom-header .vcom-language-control select{width:116px;height:44px;min-height:44px;padding-left:8px}
}
@media(max-width:350px){
 .vcom-header{padding-left:10px;padding-right:10px;gap:8px}
 .vcom-transparent-logo{width:115px}
 .vcom-header-details{font-size:12px}
 .vcom-header .vcom-language-control select{width:110px}
}

/* Short language codes keep the header compact on every screen. */
.vcom-header .vcom-language-control select{width:72px;max-width:72px;padding:6px 20px 6px 10px}


/* Compact native dropdown matching the brand header. */
.vcom-header .vcom-language-control{position:relative;display:inline-flex;padding:0;align-items:center;flex:0 0 auto}
.vcom-header .vcom-language-control::after{content:"";position:absolute;right:11px;top:50%;width:5px;height:5px;border-right:1.5px solid #19382c;border-bottom:1.5px solid #19382c;transform:translateY(-70%) rotate(45deg);pointer-events:none}
.vcom-header .vcom-language-control select{display:block;width:66px;max-width:66px;height:36px;min-height:36px;margin:0;padding:6px 23px 6px 11px;box-sizing:border-box;-webkit-appearance:none;appearance:none;border:1px solid #d9e2d3;border-radius:5px;background:#f7f9f4;color:#19382c;font-size:14px;font-weight:600;line-height:22px;cursor:pointer;box-shadow:none}
.vcom-header .vcom-language-control select:hover{border-color:#6ba24a;background:#f0f5ea}
.vcom-header .vcom-language-control select:focus-visible{outline:2px solid #6ba24a;outline-offset:2px}
@media(max-width:600px){.vcom-header .vcom-language-control select{width:66px;max-width:66px;font-size:16px}}

/* Single border when the language dropdown receives focus. */
.vcom-header .vcom-language-control select:focus,
.vcom-header .vcom-language-control select:focus-visible{outline:none!important;box-shadow:none!important;border-color:#6ba24a;background:#f0f5ea}

/* Anchored language dropdown avoids oversized system selection dialogs. */
.vcom-header .vcom-language-control::after{display:none}
.vcom-header .vcom-language-control select[hidden]{display:none!important}
.vcom-language-trigger{display:inline-flex;align-items:center;justify-content:center;gap:9px;box-sizing:border-box;width:66px;height:36px;min-height:36px;padding:0 9px;border:1px solid #d9e2d3;border-radius:5px;background:#f7f9f4;color:#19382c;font-size:14px;font-weight:600;line-height:1;cursor:pointer;box-shadow:none}
.vcom-language-chevron{width:5px;height:5px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg)}
.vcom-language-trigger[aria-expanded="true"]{border-color:#6ba24a;background:#f0f5ea}
.vcom-language-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:1001;width:148px;box-sizing:border-box;padding:4px;border:1px solid #d9e2d3;border-radius:7px;background:#fff;box-shadow:0 5px 16px #19382c18}
.vcom-language-menu[hidden]{display:none!important}
.vcom-language-menu button{display:flex;align-items:center;gap:10px;width:100%;min-height:40px;padding:9px 10px;box-sizing:border-box;border:0;border-radius:4px;background:#fff;color:#19382c;text-align:left;font-size:13px;font-weight:600;line-height:1.4;cursor:pointer}
.vcom-language-menu button span{font-weight:400}
.vcom-language-menu button[aria-pressed="true"],.vcom-language-menu button:hover{background:#eef5e7;color:#426f29}
.vcom-language-trigger:focus,.vcom-language-menu button:focus{outline:none;box-shadow:none}
.vcom-language-trigger:focus-visible{border-color:#6ba24a;background:#eef5e7}
.vcom-language-menu button:focus-visible{outline:1px solid #6ba24a;outline-offset:-1px;background:#eef5e7}

/* Persistent basket status and brief brand-colour feedback. */
.vcom-app .vcom-product .vcom-add-product.is-added{background:#f1713d;border-color:#f1713d;color:#fff;white-space:normal;line-height:1.4;height:auto;min-height:44px}
.vcom-app .vcom-product .vcom-add-product.is-added:hover{background:#f1713d;border-color:#f1713d}
.vcom-app .vcom-cart-count{background:#f1713d;color:#fff;font-weight:700;box-shadow:0 1px 3px #19382c20}
.vcom-app .vcom-mobile-cart{background:#6ba24a;border:1px solid #568b39;box-shadow:0 2px 5px #19382c12}
.vcom-app .vcom-mobile-cart svg{color:#fff}
.vcom-app .vcom-continue-shopping{transition:background-color .18s,color .18s,border-color .18s}
.vcom-app .vcom-continue-shopping.is-clicked,.vcom-app .vcom-continue-shopping:active{background:#f1713d;border-color:#f1713d;color:#fff!important}
.vcom-feedback-pop{animation:vcom-basket-pop .45s ease-out}
@keyframes vcom-basket-pop{0%{transform:scale(1)}45%{transform:scale(1.04);box-shadow:0 0 0 4px #f1713d26}100%{transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.vcom-feedback-pop{animation:none}.vcom-app .vcom-continue-shopping{transition:none}}

.vcom-map-results{max-height:260px;overflow-y:auto}.vcom-map-result{line-height:1.5;overflow-wrap:anywhere}

/* Logo-orange interaction states on the mobile top actions. */
@media(max-width:900px){
 .vcom-app .vcom-continue-shopping:hover,
 .vcom-app .vcom-continue-shopping:active,
 .vcom-app .vcom-continue-shopping:focus-visible,
 .vcom-app .vcom-continue-shopping.is-clicked,
 .vcom-app .vcom-mobile-cart:hover,
 .vcom-app .vcom-mobile-cart:active,
 .vcom-app .vcom-mobile-cart:focus-visible{background:#f1713d!important;border-color:#f1713d!important;color:#fff!important}
 .vcom-app .vcom-mobile-cart{transition:background-color .18s,border-color .18s}
}
@media(prefers-reduced-motion:reduce){.vcom-app .vcom-mobile-cart{transition:none}}

/* Keep the count white in every cart state. */
.vcom-app .vcom-cart-count,.vcom-app .vcom-cart-count.has-items{background:rgba(0,0,0,.12);color:#fff;transition:background-color .18s}
.vcom-app .vcom-mobile-cart.has-items{background:#f1713d!important;border-color:#f1713d!important;color:#fff!important}
@media(prefers-reduced-motion:reduce){.vcom-app .vcom-cart-count{transition:none}}

.vcom-map-search>textarea{margin-bottom:8px}.vcom-map-search>.vcom-map-search-row{display:flex;justify-content:flex-end}.vcom-map-search>.vcom-map-search-row button{min-height:40px;padding:8px 18px}

.vcom-map-search>.vcom-map-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
@media(max-width:420px){.vcom-map-search>.vcom-map-search-row{grid-template-columns:1fr}}

.vcom-shipping{padding:14px 0;border-top:1px solid #e0e5db;display:grid;gap:8px}.vcom-shipping label{font-weight:600}.vcom-shipping select{width:100%;min-width:0;min-height:44px;border:1px solid #ced6c8;border-radius:8px;padding:10px;background:#fff;color:#203b2e}.vcom-shipping-status{margin:0;font-size:14px;color:#596652}.vcom-shipping-status:empty{display:none}.vcom-shipping select[hidden]{display:none}

.vcom-shipping{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 12px}.vcom-fee-label{font-weight:500}.vcom-fee-amount{white-space:nowrap;font-variant-numeric:tabular-nums}.vcom-shipping-status{grid-column:1/-1}.vcom-shipping select[hidden]{display:none!important}

/* Keep the checkbox independent of the full-size form input rules. */
.vcom-form .vcom-remember-details .vcom-save-address{display:flex;align-items:flex-start;gap:8px;font-weight:400;font-size:13px;line-height:20px;margin:0 0 4px}
.vcom-form .vcom-remember-details .vcom-save-address input[type="checkbox"]{box-sizing:border-box;appearance:auto;-webkit-appearance:checkbox;width:16px;height:16px;min-width:16px;min-height:0;max-height:16px;flex:0 0 16px;padding:0;margin:2px 0 0;border-radius:2px;vertical-align:top;accent-color:var(--green)}
.vcom-form .vcom-remember-details .vcom-save-address span{display:block;min-width:0;line-height:20px}

/* Sheet-backed ingredient builders */
.vcom-synced-kit-promo { width:100%;margin:8px 0;padding:12px 16px;text-align:left;border:1px solid #a7bf8d;border-radius:8px;background:#edf3e3;color:#1e3d2d;font-weight:600; }
.vcom-synced-kit-promo:hover,.vcom-synced-kit-promo:active { background:#ef793f;color:#fff; }
.vcom-synced-kit { padding:16px;border:1px solid #dbe2d6;border-radius:10px;background:#fff; }
.vcom-kit-ingredient { padding:12px 0;border-bottom:1px solid #edf0e9; }
.vcom-kit-ingredient > label { display:flex;align-items:flex-start;gap:10px;margin-bottom:8px; }
.vcom-kit-selected { width:16px!important;min-height:0!important;margin-top:4px!important;flex:0 0 16px; }
.vcom-kit-portion { display:flex;gap:10px; }
.vcom-kit-weight { flex:1;min-width:0; }
.vcom-kit-quantity { width:75px!important; }
.vcom-add-synced-kit,.vcom-close-synced-kit { margin-top:10px;padding:12px 16px;border-radius:8px; }
.vcom-add-synced-kit { background:#6fa344;color:white;border:0; }
.vcom-add-synced-kit:hover,.vcom-add-synced-kit:active { background:#ef793f; }
.vcom-synced-kit[hidden],.vcom-synced-kit-promo[hidden] { display:none!important; }

/* Compact category navigation and ingredient cards. */
.vcom-primary-filters{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important;flex-wrap:nowrap!important}
.vcom-primary-filters button{min-width:0!important;width:auto!important;padding:10px 4px!important;font-size:clamp(11px,2.9vw,16px)!important;white-space:nowrap!important}
.vcom-category-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.vcom-category-tabs[hidden],.vcom-child-filter-control,.vcom-fruit-subcategory-tabs{display:none!important}
.vcom-category-tabs button{width:auto;flex:0 1 auto;margin:0;padding:10px 14px;border:1px solid #ccd6c5;border-radius:8px;background:#fff;color:#203b2e;font-weight:500;text-align:center}
.vcom-category-tabs button.active{background:#6fa344;color:#fff;border-color:#6fa344}
.vcom-category-tabs button:hover,.vcom-category-tabs button:active{background:#ef793f;color:#fff;border-color:#ef793f}
.vcom-kit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0}
.vcom-kit-ingredient{padding:12px;border:1px solid #dbe2d6;border-radius:8px;background:#fafcf7;min-width:0}
.vcom-kit-ingredient:has(.vcom-kit-selected:checked){border-color:#6fa344;background:#edf3e3}
.vcom-kit-ingredient>label{line-height:1.5;font-weight:500;min-height:3em}
.vcom-kit-weight{width:100%;font-size:14px;padding:8px;min-height:42px}
@media(max-width:360px){.vcom-kit-grid{grid-template-columns:1fr}}

/* Hide the intro during mobile and tablet category browsing. */
@media(max-width:1100px){
 .vcom-app.vcom-focused-catalog>.vcom-intro{display:none!important}
 .vcom-app.vcom-focused-catalog>.vcom-layout{padding-top:12px}
}

/* Custom choices fit phone widths, including long ingredient names. */
.vcom-synced-kit,.vcom-kit-grid,.vcom-kit-ingredient,.vcom-kit-portion{box-sizing:border-box;max-width:100%;min-width:0}
.vcom-kit-ingredient>label span{min-width:0;overflow-wrap:anywhere}
.vcom-kit-weight{box-sizing:border-box;max-width:100%;width:100%;min-width:0}
.vcom-synced-kit h2,.vcom-synced-kit p{overflow-wrap:anywhere}
.vcom-category-tabs button{max-width:100%;white-space:normal;overflow-wrap:anywhere}
@media(max-width:600px){
 .vcom-kit-grid{grid-template-columns:minmax(0,1fr);gap:10px}
 .vcom-synced-kit{padding:12px;width:100%}
 .vcom-kit-ingredient{padding:12px}
 .vcom-kit-ingredient>label{min-height:0;font-size:15px;align-items:flex-start}
 .vcom-kit-selected{height:18px!important;width:18px!important;flex-basis:18px!important;padding:0!important}
 .vcom-kit-portion{display:block;width:100%}
 .vcom-kit-weight{display:block;font-size:16px;min-height:46px}
 .vcom-add-synced-kit,.vcom-close-synced-kit{display:block;width:100%;margin:10px 0 0;min-height:46px;box-sizing:border-box;white-space:normal}
 .vcom-mix-fruits{grid-template-columns:minmax(0,1fr)}
 .vcom-mix-fruits span{font-size:15px;overflow-wrap:anywhere}
}

.vcom-date-error{font-size:13px;font-weight:400;color:#a42c24;line-height:1.5;margin:6px 0 0}.vcom-date-error:empty{display:none}

/* Custom kit actions belong to the selected vegetable subcategory. */
.vcom-kit-category-options{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.vcom-kit-category-options[hidden]{display:none!important}
.vcom-kit-category-options button{max-width:100%;white-space:normal}
@media(max-width:600px){.vcom-kit-category-options button{width:100%;min-height:46px}}

/* Custom kits appear as the next item in the regular kit list. */
.vcom-products>.vcom-custom-kit-list-item{display:block;width:100%;box-sizing:border-box;margin:0;padding:18px 15px;min-height:86px;border:0;border-top:1px solid #e7ebe4;border-radius:0;background:#fff;color:var(--ink);font:700 17px Arial;text-align:left;cursor:pointer}
.vcom-products>.vcom-custom-kit-list-item:hover,.vcom-products>.vcom-custom-kit-list-item:focus-visible{background:#edf3e3;color:var(--ink)}
.vcom-category-tabs [data-open-kit].active,.vcom-category-tabs .vcom-mix-promo.active{background:#6fa344;border-color:#6fa344;color:#fff}

.vcom-category-tabs [data-open-kit].active:hover,.vcom-category-tabs [data-open-kit].active:active,.vcom-category-tabs .vcom-mix-promo.active:hover,.vcom-category-tabs .vcom-mix-promo.active:active{background:#6fa344;border-color:#6fa344;color:#fff}

.vcom-picker-source{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;opacity:0;pointer-events:none;clip-path:inset(50%)}
.vcom-date-toggle{width:100%;min-height:46px;padding:12px;border:1px solid #ccd5c7;border-radius:6px;background:#fff;color:var(--ink);text-align:left;font:600 16px Arial;cursor:pointer}
.vcom-calendar{box-sizing:border-box;width:100%;max-width:370px;padding:12px;margin:8px 0;border:1px solid #ccd5c7;border-radius:8px;background:#fff}
.vcom-calendar[hidden]{display:none!important}
.vcom-calendar-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}
.vcom-calendar-head button{min-width:40px;min-height:40px;border:0;border-radius:5px;background:#edf3e3;color:var(--ink);font-size:24px}
.vcom-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;text-align:center}
.vcom-calendar-grid>span{font-size:11px;padding:6px 0}
.vcom-calendar-grid button{min-width:0;min-height:40px;padding:4px;border:0;border-radius:5px;background:#edf3e3;color:var(--ink);font-size:15px;font-weight:700;cursor:pointer}
.vcom-calendar button:disabled{background:#f5f5f5;color:#aaa;font-weight:400;cursor:default}
.vcom-calendar-grid button.selected,.vcom-slot-choices button.selected{background:var(--green);color:#fff;border-color:var(--green)}
.vcom-slot-choices{display:flex;flex-wrap:wrap;gap:8px}
.vcom-slot-choices button{width:100%;min-height:46px;padding:10px;border:1px solid #ccd5c7;border-radius:6px;background:#fff;color:var(--ink);font-size:16px;font-weight:700;cursor:pointer}
.vcom-slot-choices button:disabled{background:#f5f5f5;color:#929292;font-weight:400;cursor:default}
.vcom-date-toggle:focus-visible,.vcom-calendar button:focus-visible,.vcom-slot-choices button:focus-visible{outline:2px solid var(--green);outline-offset:2px}

.vcom-form select[name="delivery_time"],.vcom-form select[name="delivery_time"] option:not(:disabled){font-weight:700}
.vcom-form select[name="delivery_time"] option:disabled{font-weight:400;color:#929292}

.vcom-form select[name="delivery_date"].vcom-picker-source{display:none!important}

.vcom-products>.vcom-custom-kit-list-item{background:#edf3e3;border:1px solid #a7bf8d;border-radius:6px;white-space:normal;line-height:1.5}
.vcom-products>.vcom-custom-kit-list-item:hover,.vcom-products>.vcom-custom-kit-list-item:active{background:var(--green);color:#fff;border-color:var(--green)}

.vcom-products>.vcom-custom-kit-list-item{background:var(--green);color:#fff;border:1px solid var(--green);border-radius:6px;min-height:50px;padding:14px 16px;text-align:center;font-weight:600}
.vcom-products>.vcom-custom-kit-list-item:hover,.vcom-products>.vcom-custom-kit-list-item:active,.vcom-products>.vcom-custom-kit-list-item:focus-visible{background:#548238;color:#fff;border-color:#548238}

/* Compact custom kit actions retain their own first row in the list. */
.vcom-products>.vcom-custom-kit-list-item{width:fit-content;max-width:calc(100% - 24px);min-height:44px;margin:12px;padding:10px 16px;font-size:15px;line-height:1.4}
@media(max-width:600px){.vcom-products>.vcom-custom-kit-list-item{max-width:calc(100% - 20px);margin:10px;padding:10px 12px;font-size:14px}}

/* Ingredient name and weight stay side by side across custom builders. */
.vcom-kit-ingredient{display:grid;grid-template-columns:minmax(0,1fr) minmax(145px,42%);align-items:center;gap:12px}
.vcom-kit-ingredient>label{margin:0;min-height:0;align-items:center;line-height:1.4}
.vcom-kit-ingredient>label input{flex:0 0 auto}
.vcom-kit-ingredient>.vcom-kit-portion{width:100%;min-width:0}
.vcom-kit-ingredient .vcom-kit-weight{min-height:44px;font-size:16px;padding:8px}
@media(max-width:600px){.vcom-kit-ingredient{grid-template-columns:minmax(0,1fr) minmax(140px,44%);gap:8px;padding:10px}.vcom-kit-ingredient>label{gap:7px;font-size:14px}}
@media(max-width:360px){.vcom-kit-ingredient{grid-template-columns:minmax(0,1fr) 132px;padding:8px;gap:6px}.vcom-kit-ingredient .vcom-kit-weight{padding:6px}}

.vcom-whatsapp-icon{display:inline-block;width:1.1em;height:1.1em;vertical-align:-.15em;flex-shrink:0}

.vcom-customer-trust{margin:0;padding:18px 28px 0;background:#fffdf8;color:#548238;font-size:15px;font-weight:600;line-height:1.5}
.vcom-customer-trust[hidden]{display:none!important}
@media(max-width:600px){.vcom-customer-trust{padding:14px 14px 0;font-size:14px}}

.vcom-language-menu-title{padding:8px 12px 6px;color:#687169;font-size:12px;font-weight:600;white-space:nowrap;border-bottom:1px solid #edf0e9}

.vcom-customer-trust{font-size:clamp(18px,2vw,24px);font-weight:700;line-height:1.45}
@media(max-width:600px){.vcom-customer-trust{font-size:18px}}

.vcom-language-trigger{width:auto;min-width:132px;padding:0 10px;white-space:nowrap;font-size:13px}

/* Compact availability bar; independent of catalog heading visibility. */
.vcom-delivery-notice{box-sizing:border-box;width:100%;padding:10px 16px;background:#1e4934;color:#fff;text-align:center;line-height:1.5;overflow-wrap:anywhere}
.vcom-delivery-notice-title{display:block;font-size:15px;font-weight:600}
.vcom-delivery-notice-detail{display:block;font-size:13px;color:#e3f0d6}
@media(max-width:600px){.vcom-delivery-notice{padding:8px 12px}.vcom-delivery-notice-title{font-size:13px}.vcom-delivery-notice-detail{font-size:12px}}

/* Custom ingredient selection: compact quantity controls and clear selection. */
.vcom-kit-ingredient{transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease}
.vcom-kit-ingredient.is-selected{background:#edf7e9;border-color:#6ba24a;box-shadow:inset 3px 0 0 #6ba24a,0 0 0 1px #6ba24a18}
.vcom-kit-ingredient>label{min-height:44px;min-width:0;cursor:pointer}
.vcom-kit-ingredient>label span{min-width:0;overflow-wrap:anywhere}
.vcom-kit-ingredient .vcom-kit-weight{font-size:14px;line-height:1.35;min-height:44px;padding:8px 24px 8px 9px;border:1px solid #cbd7c5;border-radius:6px;background-color:#fff;max-width:100%}
.vcom-kit-ingredient .vcom-kit-weight.is-placeholder{font-size:13px;color:#61715e}
.vcom-kit-ingredient .vcom-kit-weight:focus-visible{outline:2px solid #548238;outline-offset:2px}
.vcom-kit-ingredient .vcom-kit-selected{appearance:none;-webkit-appearance:none;width:24px!important;height:24px!important;min-height:24px!important;flex:0 0 24px;margin:0!important;padding:0;border:1px solid #548238;border-radius:5px;background-color:#6ba24a;cursor:pointer;background-position:center;background-repeat:no-repeat;background-size:18px 18px;box-shadow:none}
.vcom-kit-ingredient .vcom-kit-selected:checked{background-color:#6ba24a;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' d='m5 12 4 4 10-10'/%3E%3C/svg%3E")}
.vcom-kit-ingredient .vcom-kit-selected:checked::before,.vcom-kit-ingredient .vcom-kit-selected:checked::after{content:none}
.vcom-kit-ingredient .vcom-kit-selected[hidden]{display:none!important}
.vcom-kit-ingredient .vcom-kit-selected:focus-visible{outline:2px solid #19382c;outline-offset:3px}
@media(max-width:600px){.vcom-kit-ingredient .vcom-kit-weight{font-size:14px;padding:8px 22px 8px 7px}.vcom-kit-ingredient .vcom-kit-weight.is-placeholder{font-size:12px}}
@supports(-webkit-touch-callout:none){.vcom-kit-ingredient{grid-template-columns:minmax(0,1fr) minmax(155px,44%)}.vcom-kit-ingredient .vcom-kit-weight,.vcom-kit-ingredient .vcom-kit-weight.is-placeholder{font-size:16px}}
@media(prefers-reduced-motion:reduce){.vcom-kit-ingredient{transition:none}}

/* Ingredient columns follow available catalog width, not device width. */
.vcom-synced-kit{container-type:inline-size}
.vcom-synced-kit .vcom-kit-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:10px;align-items:stretch}
.vcom-synced-kit .vcom-kit-ingredient{grid-template-columns:minmax(0,1fr) 150px;gap:12px;padding:12px;align-items:center}
.vcom-synced-kit .vcom-kit-ingredient>label{align-items:center;gap:8px;font-size:15px;line-height:1.45;min-height:44px}
.vcom-synced-kit .vcom-kit-ingredient>label span{word-break:normal;overflow-wrap:normal;hyphens:manual}
.vcom-synced-kit .vcom-kit-ingredient>.vcom-kit-portion{width:100%;min-width:0;justify-self:stretch}
.vcom-synced-kit .vcom-kit-ingredient .vcom-kit-weight{min-height:44px}
@media(max-width:600px){
 .vcom-synced-kit h2{font-size:22px;line-height:1.3;margin:8px 0 12px}
 .vcom-synced-kit>p{font-size:14px;line-height:1.55;margin:10px 0 14px}
 .vcom-synced-kit .vcom-kit-ingredient{grid-template-columns:minmax(0,1fr) 134px;gap:10px;padding:10px}
 .vcom-synced-kit .vcom-kit-ingredient>label{font-size:14px;min-height:44px;gap:7px}
}
@supports(-webkit-touch-callout:none){.vcom-synced-kit .vcom-kit-ingredient{grid-template-columns:minmax(0,1fr) 156px}}
@container(max-width:300px){
 .vcom-synced-kit .vcom-kit-ingredient{grid-template-columns:minmax(0,1fr);gap:8px;padding:10px}
 .vcom-synced-kit .vcom-kit-ingredient>label{min-height:0}
 .vcom-synced-kit .vcom-kit-ingredient>.vcom-kit-portion{width:100%;justify-self:stretch}
}
/* Reserve arrow space once so compact select text is not clipped. */
.vcom-synced-kit .vcom-kit-ingredient .vcom-kit-weight{appearance:none;-webkit-appearance:none;padding:8px 22px 8px 8px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='m2 4 4 4 4-4' fill='none' stroke='%23546b50' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 7px center;background-size:10px}
@media(max-width:600px){.vcom-synced-kit .vcom-kit-ingredient{grid-template-columns:minmax(0,1fr) 142px}}
@supports(-webkit-touch-callout:none){.vcom-synced-kit .vcom-kit-ingredient{grid-template-columns:minmax(0,1fr) 156px}}
@container(max-width:300px){.vcom-synced-kit .vcom-kit-ingredient{grid-template-columns:minmax(0,1fr)}}

/* Mobile ingredients: name first, full-width quantity below. */
@media(max-width:600px){
 .vcom-synced-kit .vcom-kit-grid{grid-template-columns:minmax(0,1fr)}
 .vcom-synced-kit .vcom-kit-ingredient{grid-template-columns:minmax(0,1fr);gap:8px;padding:12px}
 .vcom-synced-kit .vcom-kit-ingredient>label{min-height:0}
 .vcom-synced-kit .vcom-kit-ingredient>.vcom-kit-portion{width:100%;justify-self:stretch}
 .vcom-synced-kit .vcom-kit-ingredient .vcom-kit-weight{width:100%}
}

/* Optional product photos share the title row without moving quantity controls. */
.vcom-product .vcom-product-title{display:flex;align-items:center;gap:12px;min-width:0}
.vcom-product .vcom-product-title>span{min-width:0;overflow-wrap:anywhere}
.vcom-app .vcom-product-image{display:block;flex:0 0 64px;width:64px;height:64px;max-width:64px;object-fit:cover;border-radius:8px;background:#f3f6ef}
.vcom-synced-kit .vcom-kit-ingredient>label>.vcom-product-image{flex-basis:48px;width:48px;height:48px;max-width:48px}
@media(max-width:600px){.vcom-app .vcom-product-image{flex-basis:52px;width:52px;height:52px;max-width:52px}.vcom-product .vcom-product-title{gap:10px}}

/* Keep category tabs on one row as new synced categories are added. */
.vcom-primary-filters{grid-template-columns:none!important;grid-auto-flow:column;grid-auto-columns:minmax(max-content,1fr);overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:#aabda0 transparent;padding-bottom:4px}
.vcom-primary-filters button{min-width:max-content!important;padding-inline:12px!important;white-space:nowrap!important}
@media(max-width:600px){.vcom-primary-filters{grid-auto-columns:minmax(max-content,calc((100% - 18px)/4));-webkit-overflow-scrolling:touch}.vcom-primary-filters button{padding-inline:10px!important}}

/* Each desktop column scrolls to its end before remaining visible. */
@media(min-width:901px){
 .vcom-app .vcom-layout>.vcom-catalog,.vcom-app .vcom-layout>.vcom-checkout{position:sticky;align-self:start;top:var(--vcom-column-sticky-top,24px)}
}
@media(max-width:900px){.vcom-app .vcom-layout>.vcom-catalog,.vcom-app .vcom-layout>.vcom-checkout{position:static;top:auto;align-self:start}}

/* Location-based convenience fee confirmation. */
.vcom-fee-dialog-overlay{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(17,37,25,.55)}
.vcom-fee-dialog{width:min(100%,390px);padding:24px;border:1px solid #dbe6d5;border-radius:12px;background:#fff;color:#19382c;box-shadow:0 12px 36px rgba(0,0,0,.22);text-align:center}
.vcom-fee-dialog h2{margin:0 0 12px;color:#19382c;font-size:21px;line-height:1.3}.vcom-fee-dialog p{margin:0 0 20px;line-height:1.55;font-size:16px}.vcom-fee-dialog button{min-width:110px;min-height:44px;padding:10px 22px;border:0;border-radius:6px;background:#6ba24a;color:#fff;font-size:16px;font-weight:600;cursor:pointer}.vcom-fee-dialog button:hover,.vcom-fee-dialog button:focus-visible{background:#548238}.vcom-fee-dialog button:focus-visible{outline:2px solid #19382c;outline-offset:3px}

/* Consistent compact desktop layout before and after category selection. */
@media (min-width: 901px) {
 .vcom-app > .vcom-intro { display:block !important; padding:16px 28px 14px; }
 .vcom-app > .vcom-intro h1 { font-size:clamp(25px, 2.5vw, 36px); line-height:1.15; margin:0 0 6px; }
 .vcom-app > .vcom-intro p { margin:0; font-size:15px; line-height:1.35; }
 .vcom-app > .vcom-layout { padding-top:0; }
 .vcom-app .vcom-header { box-sizing:border-box; min-height:76px; padding-top:8px; padding-bottom:8px; }
 .vcom-app .vcom-transparent-logo { width:180px; max-height:60px; }
 .vcom-app .vcom-delivery-notice { padding-top:6px; padding-bottom:6px; }
 .vcom-app .vcom-primary-filters { margin-bottom:6px; }
 .vcom-app .vcom-primary-filters button { min-height:42px; padding-top:6px !important; padding-bottom:6px !important; }
 .vcom-app .vcom-category-tabs { gap:6px; margin:8px 0; }
 .vcom-app .vcom-category-tabs button { min-height:38px; padding:7px 11px; line-height:1.25; }
 .vcom-app .vcom-search { min-height:44px; padding:9px 12px; margin-bottom:4px; }
 .vcom-app .vcom-count { margin:8px 0; line-height:1.4; }
 .vcom-app .vcom-product { box-sizing:border-box; min-height:76px; padding:8px 12px; }
 .vcom-app .vcom-product-image { flex-basis:52px; width:52px; height:52px; max-width:52px; }
}
