# Create a cookie-only pressel with the background image embedded (no assets folder needed)
import base64, io, os, zipfile
from PIL import Image, ImageDraw, ImageFilter, ImageOps
# Generate a premium dark background as before
w, h = 1920, 1080
img = Image.new(“RGB”, (w, h), (10, 13, 20))
draw = ImageDraw.Draw(img)
for y in range(h):
c = int(15 + 35 * (y / h))
draw.line([(0, y), (w, y)], fill=(10, 13, 20 + c))
rad = Image.new(“L”, (w, h), 0)
rd = ImageDraw.Draw(rad)
rd.ellipse([int(w*0.45), int(h*0.05), int(w*1.05), int(h*0.95)], fill=175)
rad = rad.filter(ImageFilter.GaussianBlur(120))
img = Image.composite(Image.new(“RGB”, (w, h), (26, 30, 44)), img, ImageOps.invert(rad))
# subtle texture
tex = Image.new(“RGB”, (w, h), (0, 0, 0))
td = ImageDraw.Draw(tex)
for x in range(-h, w, 24):
td.line([(x, 0), (x + h, h)], fill=(255, 255, 255), width=1)
tex = tex.convert(“L”).filter(ImageFilter.GaussianBlur(6))
tex = ImageOps.colorize(tex, (0,0,0), (35, 45, 70))
tex = Image.blend(img, tex, 0.06)
# vignette
vig = Image.new(“L”, (w, h), 0)
vg = ImageDraw.Draw(vig)
vg.rectangle([0, 0, w, h], fill=255)
vig = vig.filter(ImageFilter.GaussianBlur(220))
vig = ImageOps.invert(vig)
result = Image.composite(tex, Image.new(“RGB”, (w, h), (12, 15, 22)), vig)
# Export JPEG to memory
buf = io.BytesIO()
result.save(buf, “JPEG”, quality=86, optimize=True, progressive=True)
jpeg_bytes = buf.getvalue()
b64 = base64.b64encode(jpeg_bytes).decode(“ascii”)
html = f”””
Official Offer • Up to 60% OFF + Free US Shipping
JOINT GLIDE • OFFICIAL
Cookie Notice
We use cookies to improve your experience and analyze traffic. By continuing, you agree to our use of cookies.
Accept & Continue
You will be redirected to the official store. Secure ClickBank® checkout.
*Free US shipping on select bundles.
“””
out_dir = “/mnt/data/jointglide_cookie_gate_inline”
os.makedirs(out_dir, exist_ok=True)
index_path = os.path.join(out_dir, “index.html”)
with open(index_path, “w”, encoding=”utf-8″) as f:
f.write(html)
zip_path = “/mnt/data/jointglide_cookie_gate_inline.zip”
with zipfile.ZipFile(zip_path, “w”, zipfile.ZIP_DEFLATED) as z:
z.write(index_path, “index.html”)
(index_path, zip_path)