/* Puffmaster "juicy" front-end: cream base, violet ink, lime buttons, pink tags, stickers and stamps. */
:root{
  --pm-cream:#fff6e9; --pm-cream-2:#ffeccf; --pm-paper:#ffffff; --pm-violet:#3b1a7a; --pm-violet-2:#5a2fb0; --pm-ink:#231347; --pm-ink-2:#6a5a8a;
  --pm-lime:#d7ff3e; --pm-lime-ink:#1b0b3a; --pm-pink:#ff4fa3; --pm-orange:#ff8a2b; --pm-line:#e7d9c2; --pm-red:#d6246e;
  --pm-font:Archivo,system-ui,-apple-system,"Segoe UI",sans-serif; --pm-marker:"Permanent Marker","Comic Sans MS",cursive;
}
html{color-scheme:light;-webkit-text-size-adjust:100%}
body.pm{margin:0;background:var(--pm-cream);color:var(--pm-ink);font-family:var(--pm-font);font-size:15px;line-height:1.5;overflow-x:hidden}
body.pm *,body.pm *::before,body.pm *::after{box-sizing:border-box}
body.pm .pm-main{overflow-x:clip}
body.pm .pm-main img{max-width:100%;height:auto}
body.pm .pm-prose a,body.pm .pm-wc a{color:var(--pm-violet-2)}
body.pm :focus-visible{outline:3px solid var(--pm-pink);outline-offset:2px}
.pm-in{max-width:1080px;margin:0 auto;padding-inline:16px}
body.pm h1,body.pm h2,body.pm h3,.pm-h2,.pm-h3{font-weight:800;font-stretch:125%;letter-spacing:-.02em;line-height:1;margin:0;text-transform:uppercase;color:var(--pm-violet)}
.pm-eyebrow{display:inline-block;font-family:var(--pm-marker);font-size:18px;color:var(--pm-pink);transform:rotate(-3deg);transform-origin:left bottom}
.pm-hint{color:var(--pm-ink-2);font-size:13px;margin:0 0 12px}
.pm-cta,.pm-ghost,body.pm .pm-cta,body.pm .pm-ghost{display:inline-block;text-decoration:none;cursor:pointer;font-family:var(--pm-font);text-transform:uppercase}
body.pm .pm-cta,.pm-cta{font-weight:800;font-stretch:112%;font-size:16px;background:var(--pm-lime);color:var(--pm-lime-ink);border:3px solid var(--pm-violet);border-radius:14px;padding:14px 22px;box-shadow:4px 4px 0 var(--pm-violet);transition:transform .12s,box-shadow .12s}
body.pm .pm-cta:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--pm-violet);color:var(--pm-lime-ink)}
body.pm .pm-cta:active{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--pm-violet)}
.pm-cta:disabled,body.pm .pm-cta:disabled{background:#e9e2d4;color:#9a92a8;border-color:#bfb6cc;box-shadow:none;transform:none;cursor:default}
body.pm .pm-ghost,.pm-ghost{font-weight:700;font-size:15px;background:var(--pm-paper);color:var(--pm-violet);border:3px solid var(--pm-violet);border-radius:14px;padding:13px 18px}
body.pm .pm-ghost:hover{background:var(--pm-cream-2);color:var(--pm-violet)}

/* Warning strip + header */
.pm-warn{background:var(--pm-violet);color:#fff;text-align:center;font-weight:700;font-size:12.5px;padding:7px 16px}
.pm-head{position:sticky;top:0;z-index:50;background:rgba(255,246,233,.94);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:3px solid var(--pm-violet)}
body.admin-bar .pm-head{top:32px}
@media(max-width:782px){body.admin-bar .pm-head{top:46px}}
.pm-head .pm-in{display:flex;align-items:center;gap:12px;padding-block:8px;min-height:64px}
.pm-logo{display:flex;align-items:center;flex:none}
body.pm .pm-logo-img{height:48px;width:auto;max-width:none;display:block}
.pm-logo-txt{font-weight:800;font-stretch:125%;font-size:20px;color:var(--pm-violet);text-transform:uppercase}
.pm-nav{display:flex;gap:4px;margin-left:auto;overflow-x:auto;scrollbar-width:none}
.pm-nav::-webkit-scrollbar{display:none}
.pm-nav a{font-weight:700;font-size:14px;color:var(--pm-violet);text-decoration:none;border:2px solid transparent;border-radius:10px;padding:8px 12px;white-space:nowrap;text-transform:uppercase;letter-spacing:.02em}
.pm-nav a:hover{background:var(--pm-cream-2);color:var(--pm-violet)}
.pm-nav a[aria-current="page"]{background:var(--pm-lime);border-color:var(--pm-violet);transform:rotate(-2deg)}
.pm-cartb{flex:none;display:inline-flex;align-items:center;gap:6px;font-weight:800;font-size:14px;color:#fff;text-decoration:none;background:var(--pm-violet);border:0;border-radius:12px 12px 12px 4px;padding:10px 14px;white-space:nowrap}
.pm-cartb:hover{color:#fff;background:var(--pm-violet-2)}
.pm-cartb svg{width:18px;height:18px;flex:none}
.pm-cartb i{font-style:normal;background:var(--pm-pink);color:#fff;border-radius:99px;padding:1px 7px;font-variant-numeric:tabular-nums}
@media(max-width:520px){body.pm .pm-logo-img{height:36px}.pm-nav a{padding:7px 8px;font-size:12.5px}.pm-cartb{padding:8px 10px}.pm-cartb-txt{display:none}}
/* Header fits on small phones (2026-10-12) */
@media(max-width:440px){.pm-head .pm-in{gap:6px}body.pm .pm-logo-img{height:30px}.pm-nav{gap:0}.pm-nav a{padding:6px 5px;font-size:11.5px;letter-spacing:0}.pm-cartb{padding:7px 9px;gap:4px}}
@media(max-width:380px){body.pm .pm-logo-img{width:30px;object-fit:cover;object-position:left center}}
@media(max-width:340px){.pm-cartb{padding:7px 7px}}

/* Hero with sunburst and mascot */
.pm-hero{position:relative;overflow:hidden;background:var(--pm-cream-2)}
.pm-hero::before{content:"";position:absolute;inset:-40%;background:repeating-conic-gradient(from 0deg,var(--pm-cream-2) 0 9deg,#ffe0b3 9deg 18deg);animation:pm-spin 90s linear infinite}
@keyframes pm-spin{to{transform:rotate(360deg)}}
.pm-hero .pm-in{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:20px;padding-block:36px 40px;align-items:center}
@media(min-width:800px){.pm-hero .pm-in{grid-template-columns:minmax(0,6fr) minmax(0,5fr);padding-block:56px}}
.pm-hero h1{font-size:clamp(40px,6.6vw,74px);letter-spacing:-.03em;line-height:.9;margin:8px 0 16px;text-wrap:balance}
.pm-hero h1 em{font-style:normal;color:#fff;-webkit-text-stroke:2px var(--pm-violet);text-shadow:4px 4px 0 var(--pm-pink)}
.pm-lead{color:var(--pm-ink-2);font-size:17px;max-width:42ch;margin:0 0 22px;font-weight:500}
.pm-ctas{display:flex;flex-wrap:wrap;gap:10px}
.pm-mascot{position:relative;justify-self:center;width:min(100%,460px)}
.pm-mascot img{width:100%;height:auto;display:block;filter:drop-shadow(8px 10px 0 rgba(59,26,122,.18));animation:pm-bob 6s ease-in-out infinite}
@keyframes pm-bob{50%{transform:translateY(-10px)}}
.pm-stk{position:absolute;display:grid;place-items:center;text-align:center;font-weight:800;font-stretch:125%;text-transform:uppercase;border-radius:50%;line-height:.95;box-shadow:0 6px 0 rgba(59,26,122,.25);z-index:2}
.pm-stk small{display:block;font-weight:700;font-stretch:100%;font-size:11px;letter-spacing:.1em}
.pm-stk-1{width:112px;height:112px;top:0;left:-6px;background:var(--pm-pink);color:#fff;font-size:28px;transform:rotate(-12deg)}
.pm-stk-2{width:96px;height:96px;bottom:10px;right:-6px;background:var(--pm-lime);color:var(--pm-violet);font-size:22px;transform:rotate(9deg);border:3px solid var(--pm-violet)}
.pm-stamp{position:absolute;top:46%;right:-10px;font-family:var(--pm-marker);font-size:20px;color:var(--pm-violet);border:3px solid var(--pm-violet);border-radius:8px;padding:4px 10px;transform:rotate(-8deg);background:rgba(255,255,255,.85);z-index:2}
@media(max-width:560px){.pm-stamp{display:none}.pm-stk-1{width:92px;height:92px;font-size:22px}.pm-stk-2{width:80px;height:80px;font-size:18px}}
.pm-awn{background:repeating-linear-gradient(90deg,var(--pm-violet) 0 40px,var(--pm-violet-2) 40px 80px);color:#fff;overflow:hidden;white-space:nowrap;font-weight:800;font-stretch:125%;font-size:15px;text-transform:uppercase;padding:9px 0;border-block:3px solid var(--pm-violet)}
.pm-awn>div{display:flex;width:max-content;align-items:center;animation:pm-run 40s linear infinite}
.pm-awn span{flex:none;margin:0 14px;display:inline-flex;align-items:center;gap:8px}
body.pm .pm-awn img{flex:none;width:34px;height:34px;object-fit:contain}
.pm-awn .pm-dot{flex:none;width:10px;height:10px;border-radius:50%;background:var(--pm-lime);margin:0 4px}
@keyframes pm-run{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.pm-hero::before,.pm-awn>div,.pm-mascot img{animation:none}.pm-cta{transition:none}}

/* Sections */
.pm-sec{padding-block:44px}
.pm-sec-paper{background:var(--pm-paper);border-block:3px solid var(--pm-violet)}
.pm-st{display:flex;align-items:center;gap:14px;margin-bottom:22px}
.pm-st h2,.pm-sec h2,.pm-h2{font-size:clamp(26px,5vw,40px)}
.pm-st::before,.pm-st::after{content:"";flex:1;height:3px;background:var(--pm-violet);border-radius:3px}
.pm-st::before{max-width:40px}
.pm-st.pm-st-wave::after{height:16px;background:none;border:0;background-image:var(--pm-wave);background-repeat:no-repeat;background-size:auto 100%;background-position:left center}
.pm-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px}
.pm-card{position:relative;background:var(--pm-paper);border:3px solid var(--pm-violet);border-radius:20px;overflow:hidden;display:flex;flex-direction:column;text-decoration:none;color:inherit;box-shadow:6px 6px 0 var(--pm-violet);transition:transform .15s}
.pm-card:hover{transform:translate(-3px,-3px) rotate(-1deg);color:inherit}
body.pm .pm-card img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;display:block;border-bottom:3px solid var(--pm-violet)}
.pm-tag{position:absolute;top:14px;left:-6px;background:var(--pm-pink);color:#fff;font-weight:800;font-stretch:125%;font-size:18px;padding:8px 14px 8px 16px;clip-path:polygon(0 0,100% 0,92% 50%,100% 100%,0 100%);box-shadow:3px 3px 0 var(--pm-violet);z-index:1}
.pm-tag .amount,.pm-tag .amount bdi,.pm-tag .woocommerce-Price-currencySymbol{color:#fff;font-size:inherit;background:none}
.pm-tag del{display:none}
.pm-tag ins{text-decoration:none}
.pm-card>div{padding:16px;display:flex;flex-direction:column;gap:6px}
.pm-card h3{font-size:22px}
.pm-card p{margin:0;color:var(--pm-ink-2);font-size:14px}
.pm-card .pm-go{align-self:flex-start;margin-top:6px;font-weight:800;font-size:13px;text-transform:uppercase;background:var(--pm-lime);color:var(--pm-violet);border:2px solid var(--pm-violet);border-radius:99px;padding:7px 14px}
.pm-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:22px 18px;counter-reset:pm;margin-top:10px}
.pm-steps>div{background:var(--pm-paper);border:3px dashed var(--pm-violet);border-radius:16px;padding:20px 16px 16px;counter-increment:pm;position:relative}
.pm-steps>div::before{content:counter(pm);position:absolute;top:-18px;left:14px;width:40px;height:40px;border-radius:50%;background:var(--pm-pink);color:#fff;font-weight:800;font-stretch:125%;font-size:22px;display:grid;place-items:center;transform:rotate(-8deg);border:3px solid var(--pm-violet)}
.pm-steps b{display:block;font-size:17px;color:var(--pm-violet);margin-top:4px}
.pm-steps span{color:var(--pm-ink-2);font-size:14px}
.pm-trust{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px}
.pm-trust>div{text-align:center;font-weight:700;color:var(--pm-violet);font-size:15px;text-transform:uppercase;letter-spacing:.02em}
body.pm .pm-trust img{width:120px;height:120px;object-fit:contain;display:block;margin:0 auto 8px;transition:transform .2s}
.pm-trust>div:hover img{transform:rotate(-6deg) scale(1.06)}
.pm-trust small{display:block;color:var(--pm-ink-2);font-weight:500;text-transform:none;letter-spacing:0}
.pm-foot{background:var(--pm-violet);color:#d9ccf5;font-size:13px;padding-block:24px;border-top:6px solid var(--pm-pink)}
.pm-foot .pm-in{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center}
.pm-foot a{color:#fff;text-decoration:none}
.pm-foot a:hover{color:var(--pm-lime)}

/* Product page */
.pm-pp{display:grid;grid-template-columns:minmax(0,1fr);gap:26px}
@media(min-width:820px){.pm-pp{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:start}.pm-ph{position:sticky;top:90px}}
.pm-frame{position:relative;justify-self:center;width:min(100%,440px);transform:rotate(-2deg);margin:16px auto 0}
.pm-frame img{width:100%;aspect-ratio:1;object-fit:cover;display:block;border:6px solid #fff;border-radius:18px;box-shadow:10px 12px 0 var(--pm-violet)}
.pm-frame .pm-stk-2{bottom:-14px;right:-14px}
.pm-pinfo h1{font-size:clamp(30px,5vw,46px);margin:4px 0 8px}
.pm-price{display:inline-block;font-weight:800;font-stretch:125%;font-size:26px;background:var(--pm-pink);color:#fff;padding:6px 14px;clip-path:polygon(0 0,100% 0,94% 50%,100% 100%,0 100%);margin:0 0 10px}
.pm-price .amount,.pm-price .amount bdi,.pm-price .woocommerce-Price-currencySymbol{color:#fff;font-size:inherit}
.pm-price del{display:none}
.pm-price ins{text-decoration:none}
.pm-price small{font-weight:700;font-stretch:100%;letter-spacing:0;font-size:12px;margin-left:8px;text-transform:none}
.pm-specs{color:var(--pm-ink-2);font-size:14px;margin-top:6px}
.pm-specs p{margin:0 0 6px}
.pm-specs ul{list-style:none;margin:6px 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.pm-specs li{font-size:12px;font-weight:700;color:var(--pm-violet);background:var(--pm-paper);border:2px solid var(--pm-violet);border-radius:8px;padding:4px 9px}
.pm-pinfo .pm-h3{font-size:22px;margin:26px 0 2px}
.pm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px}
@media(max-width:360px){.pm-grid{grid-template-columns:minmax(0,1fr)}}
.pm-fl{background:var(--pm-paper);border:3px solid var(--pm-violet);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;min-width:0;box-shadow:4px 4px 0 var(--pm-violet);transition:transform .12s,box-shadow .12s}
.pm-fl.pm-on{transform:rotate(-1.5deg);box-shadow:6px 6px 0 var(--pm-pink)}
.pm-fl.pm-out{opacity:.55}
.pm-fl-name{background:var(--c,var(--pm-cream-2));color:var(--pm-violet);padding:6px 10px;border-bottom:3px solid var(--pm-violet);display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:58px}
.pm-fl-name b{font-weight:800;font-stretch:125%;font-size:15px;text-transform:uppercase;line-height:1.05}
.pm-fl-name i{display:block;font-style:normal;font-size:11px;color:var(--pm-ink-2);font-weight:500;text-transform:none;margin-top:2px}
body.pm .pm-fl-name img{width:48px;height:48px;object-fit:contain;flex:none;filter:drop-shadow(1px 2px 0 rgba(59,26,122,.25));transition:transform .15s}
.pm-fl.pm-on .pm-fl-name img{transform:rotate(-10deg) scale(1.12)}
.pm-fl-body{padding:8px 10px 10px}
.pm-step{display:flex;align-items:center;justify-content:space-between;background:var(--pm-cream);border:2px solid var(--pm-violet);border-radius:10px;padding:3px}
.pm-step button{width:38px;height:38px;border:0;border-radius:7px;background:var(--pm-paper);color:var(--pm-violet);font-size:20px;line-height:1;cursor:pointer;font-weight:800;font-family:var(--pm-font)}
.pm-fl.pm-on .pm-plus{background:var(--pm-lime)}
.pm-step output{font-weight:800;font-variant-numeric:tabular-nums;min-width:24px;text-align:center;color:var(--pm-violet)}
.pm-soldout{display:block;padding:10px;font-size:12px;font-weight:800;color:var(--pm-ink-2);text-transform:uppercase;letter-spacing:.1em;text-align:center}
.pm-err{color:var(--pm-red);font-weight:700;margin:12px 0 0}
.pm-bar{position:fixed;left:0;right:0;bottom:0;z-index:60;background:var(--pm-violet);border-top:4px solid var(--pm-pink);padding:12px 0 calc(12px + env(safe-area-inset-bottom,0px))}
.pm-bar .pm-in{display:flex;align-items:center;gap:12px}
.pm-sum{flex:1;min-width:0;font-variant-numeric:tabular-nums;color:#fff}
.pm-sum b{font-weight:800;font-stretch:125%;font-size:22px;display:block;line-height:1.1}
.pm-sum span{font-size:12px;color:#d9ccf5}
body.pm .pm-bar .pm-cta{border-color:#fff;box-shadow:4px 4px 0 var(--pm-pink)}
body.pm .pm-bar .pm-cta:disabled{border-color:#8a6fd0;box-shadow:none;background:#4b2a90;color:#b9a8e6}
body.pm.single-product{padding-bottom:110px}
.pm-desc{margin-top:28px;padding-top:20px;border-top:3px dashed var(--pm-line)}

/* Prose (legal pages, descriptions) */
.pm-narrow{max-width:760px}
.pm-prose{color:var(--pm-ink);font-size:15px;line-height:1.65}
.pm-prose h1{margin-bottom:18px}
.pm-prose h2{font-size:22px;margin:28px 0 10px}
.pm-prose h3{font-size:17px;margin:20px 0 8px}
.pm-prose p{margin:0 0 12px}
.pm-prose ul,.pm-prose ol{padding-left:22px;margin:0 0 12px}

/* WooCommerce: cart, checkout, account, notices (light) */
.pm-wc h1{margin-bottom:18px}
body.pm .woocommerce{color:var(--pm-ink)}
body.pm .woocommerce-message,body.pm .woocommerce-info,body.pm .woocommerce-error,body.pm .woocommerce-notice{background:var(--pm-paper);color:var(--pm-ink);border:3px solid var(--pm-violet);border-radius:14px;padding:14px 16px;margin:0 0 18px;list-style:none;box-shadow:4px 4px 0 var(--pm-violet)}
body.pm .woocommerce-message::before,body.pm .woocommerce-info::before,body.pm .woocommerce-error::before{display:none}
body.pm .woocommerce-error{border-color:var(--pm-red);box-shadow:4px 4px 0 var(--pm-red)}
body.pm .woocommerce-message a.button,body.pm .woocommerce-info a.button,body.pm .woocommerce-error a.button{float:none;display:inline-block;margin:0 0 6px 0}
body.pm .woocommerce a.button,body.pm .woocommerce button.button,body.pm .woocommerce input.button,body.pm .woocommerce #respond input#submit,body.pm .woocommerce a.button.alt,body.pm .woocommerce button.button.alt,body.pm .woocommerce input.button.alt,body.pm .woocommerce #payment #place_order,body.pm button.button,body.pm a.button{font-family:var(--pm-font);font-weight:800;font-size:15px;text-transform:uppercase;background:var(--pm-lime);color:var(--pm-lime-ink);border:3px solid var(--pm-violet);border-radius:12px;padding:12px 18px;line-height:1.2;text-decoration:none;cursor:pointer;box-shadow:3px 3px 0 var(--pm-violet)}
body.pm .woocommerce a.button:hover,body.pm .woocommerce button.button:hover,body.pm .woocommerce input.button:hover,body.pm .woocommerce #payment #place_order:hover{background:#e6ff6b;color:var(--pm-lime-ink)}
body.pm .woocommerce button.button:disabled,body.pm .woocommerce button.button:disabled[disabled]{background:#e9e2d4;color:#9a92a8;border-color:#bfb6cc;box-shadow:none;opacity:1}
body.pm .woocommerce #payment #place_order{width:100%;font-size:17px;padding:16px}
body.pm .woocommerce table.shop_table{border:3px solid var(--pm-violet);border-radius:16px;border-collapse:separate;background:var(--pm-paper);color:var(--pm-ink);margin-bottom:22px;box-shadow:6px 6px 0 var(--pm-violet)}
body.pm .woocommerce table.shop_table th,body.pm .woocommerce table.shop_table td{border-color:var(--pm-line);padding:12px}
body.pm .woocommerce table.shop_table th{color:var(--pm-violet);font-size:12px;letter-spacing:.08em;text-transform:uppercase}
body.pm .woocommerce table.shop_table td.product-name a{color:var(--pm-violet);text-decoration:none;font-weight:800}
body.pm .woocommerce table.shop_table .variation{color:var(--pm-ink-2);font-size:13px}
body.pm .woocommerce table.shop_table .variation dt,body.pm .woocommerce table.shop_table .variation dd{margin:0}
body.pm .woocommerce table.shop_table img{width:64px;border-radius:10px;border:2px solid var(--pm-violet)}
body.pm .woocommerce a.remove{color:var(--pm-pink)!important;font-size:22px}
body.pm .woocommerce a.remove:hover{background:var(--pm-pink);color:#fff!important}
body.pm .woocommerce .amount,body.pm .woocommerce .amount bdi{color:var(--pm-ink);font-weight:700}
body.pm .woocommerce .quantity .qty{background:var(--pm-cream);color:var(--pm-ink);border:2px solid var(--pm-violet);border-radius:10px;padding:8px 6px;width:70px;font-family:var(--pm-font);font-weight:800}
body.pm .woocommerce .cart-collaterals .cart_totals{width:100%;max-width:440px;float:none;margin-left:auto}
body.pm .woocommerce .cart_totals h2{font-size:22px;margin-bottom:12px;text-align:left}
body.pm .woocommerce .cart_totals table.shop_table tr.order-total td{font-size:20px;font-weight:800}
body.pm .woocommerce .cart_totals .wc-proceed-to-checkout a.checkout-button{display:block;text-align:center;font-size:17px;padding:16px}
body.pm .woocommerce .cart_totals .wc-proceed-to-checkout a.checkout-button~a.checkout-button{display:none!important}
body.pm .woocommerce .coupon{display:flex;gap:8px;align-items:center}
body.pm .woocommerce .coupon input.input-text{width:auto;flex:1}
body.pm .woocommerce .cart .button,body.pm .woocommerce .cart input.button{background:var(--pm-paper);color:var(--pm-violet)}
body.pm .woocommerce .return-to-shop a.button{background:var(--pm-lime);color:var(--pm-lime-ink)}
body.pm .woocommerce .cart-empty{font-size:18px}
body.pm .woocommerce form .form-row label{color:var(--pm-violet);font-size:13px;font-weight:700}
body.pm .woocommerce form .form-row .required{color:var(--pm-pink)}
body.pm .woocommerce form .form-row input.input-text,body.pm .woocommerce form .form-row textarea,body.pm .woocommerce-page form .form-row select,body.pm .woocommerce form .form-row select,body.pm .woocommerce .input-text{width:100%;background:var(--pm-paper);color:var(--pm-ink);border:2px solid var(--pm-violet);border-radius:10px;padding:12px;font-family:var(--pm-font);font-size:15px;line-height:1.3}
body.pm .woocommerce form .form-row input.input-text:focus,body.pm .woocommerce form .form-row textarea:focus{border-color:var(--pm-pink);outline:none;box-shadow:3px 3px 0 var(--pm-pink)}
body.pm .woocommerce form .form-row.woocommerce-invalid input.input-text{border-color:var(--pm-red)}
body.pm .woocommerce form .form-row{margin-bottom:10px}
body.pm .select2-container--default .select2-selection--single{background:var(--pm-paper);border:2px solid var(--pm-violet);border-radius:10px;height:46px}
body.pm .select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--pm-ink);line-height:42px;padding-left:12px}
body.pm .select2-container--default .select2-selection--single .select2-selection__arrow{height:42px}
body.pm .select2-container--default .select2-selection--single .select2-selection__arrow b{border-top-color:var(--pm-violet)}
body.pm .select2-dropdown{background:var(--pm-paper);border:2px solid var(--pm-violet);color:var(--pm-ink)}
body.pm .select2-container--default .select2-results__option--highlighted[aria-selected]{background:var(--pm-lime);color:var(--pm-lime-ink)}
body.pm .select2-container--default .select2-search--dropdown .select2-search__field{background:var(--pm-cream);color:var(--pm-ink);border:2px solid var(--pm-violet)}
body.pm .woocommerce-checkout h3,body.pm .woocommerce-account h2,body.pm .woocommerce-account h3,body.pm .woocommerce-cart h2{font-size:20px;margin:0 0 12px}
body.pm .woocommerce-checkout .col2-set{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
body.pm .woocommerce-checkout .col2-set .col-1,body.pm .woocommerce-checkout .col2-set .col-2{float:none;width:100%}
body.pm form.checkout.woocommerce-checkout{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-items:start}
@media(min-width:900px){body.pm form.checkout.woocommerce-checkout{grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-template-rows:auto 1fr}body.pm form.checkout #customer_details{grid-column:1;grid-row:1/span 2}body.pm form.checkout #order_review_heading,body.pm form.checkout #order_review{grid-column:2}}
body.pm form.checkout #customer_details,body.pm form.checkout #order_review,body.pm form.checkout #order_review_heading{width:100%;float:none;max-width:none}
body.pm form.checkout #order_review_heading{font-size:20px;margin:0 0 10px;border:0!important;padding:0}
body.pm form.checkout #order_review{background:var(--pm-paper);border:3px solid var(--pm-violet)!important;border-radius:16px;padding:16px;box-shadow:6px 6px 0 var(--pm-violet)}
body.pm #order_review table.shop_table{background:transparent;border:0;box-shadow:none;margin-bottom:12px}
body.pm #order_review table.shop_table th,body.pm #order_review table.shop_table td{padding:9px 4px}
body.pm .woocommerce-checkout-review-order-table tr.order-total td{font-size:20px;font-weight:800}
body.pm .woocommerce-checkout #payment{background:var(--pm-cream);border-radius:12px;border:2px solid var(--pm-line)}
body.pm .woocommerce-checkout #payment ul.payment_methods{border-bottom:2px solid var(--pm-line);padding:14px}
body.pm .woocommerce-checkout #payment ul.payment_methods li{color:var(--pm-ink)}
body.pm .woocommerce-checkout #payment div.payment_box{background:var(--pm-paper);color:var(--pm-ink-2);border-radius:10px}
body.pm .woocommerce-checkout #payment div.payment_box::before{border-bottom-color:var(--pm-paper)}
body.pm .woocommerce-checkout #payment div.form-row.place-order{padding:14px}
body.pm .woocommerce-terms-and-conditions-wrapper{color:var(--pm-ink-2);font-size:13px;margin-bottom:10px}
body.pm .woocommerce-privacy-policy-text{color:var(--pm-ink-2);font-size:13px}
body.pm .woocommerce-form__label-for-checkbox span,body.pm .woocommerce-terms-and-conditions-checkbox-text{font-weight:400;font-size:13px;color:var(--pm-ink-2)}
body.pm .woocommerce form .form-row label.checkbox{display:inline;font-weight:400}
body.pm .woocommerce-form__input-checkbox{accent-color:var(--pm-violet)}
body.pm #ship-to-different-address{font-size:14px;text-transform:none;letter-spacing:0;font-stretch:100%}
@media(max-width:420px){body.pm .pm-fl-name img{width:40px;height:40px}.pm-fl-name b{font-size:14px}}
body.pm .woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0 0 20px;display:flex;flex-wrap:wrap;gap:6px}
body.pm .woocommerce-MyAccount-navigation ul li a{display:inline-block;color:var(--pm-violet)!important;text-decoration:none;background:var(--pm-paper)!important;border:2px solid var(--pm-violet);border-radius:99px;padding:8px 12px;font-size:13px;font-weight:700}
body.pm .woocommerce-MyAccount-navigation ul li.is-active a{background:var(--pm-lime)!important;color:var(--pm-lime-ink)!important}
body.pm .woocommerce-MyAccount-navigation,body.pm .woocommerce-MyAccount-content{float:none;width:100%}
body.pm .woocommerce form.login,body.pm .woocommerce form.register,body.pm .woocommerce form.checkout_coupon,body.pm .woocommerce form.lost_reset_password{border:3px solid var(--pm-violet);border-radius:16px;background:var(--pm-paper);padding:20px;box-shadow:6px 6px 0 var(--pm-violet)}
body.pm .woocommerce-order ul.order_details{background:var(--pm-paper);border:3px solid var(--pm-violet);border-radius:14px;padding:16px;margin:0 0 20px}
body.pm .woocommerce-order ul.order_details li{color:var(--pm-ink-2);border-right-color:var(--pm-line)}
body.pm .woocommerce-order ul.order_details li strong{color:var(--pm-violet)}
body.pm .woocommerce-customer-details address{border:2px solid var(--pm-violet);border-radius:12px;padding:14px}
@media(max-width:768px){body.pm .woocommerce table.shop_table_responsive tr td{border-color:var(--pm-line)}body.pm .woocommerce table.shop_table_responsive tr td::before{color:var(--pm-violet)}body.pm .woocommerce table.shop_table_responsive tr:nth-child(2n) td{background:transparent}}

/* Third-party widgets that fight the design */
body.pm #moderncart-floating-cart,body.pm #moderncart-slide-out-modal,body.pm .moderncart-plugin,body.pm #power-coupons-drawer,body.pm .power-coupons-drawer-trigger-wrapper,body.pm .power-coupons-drawer-toggle,body.pm .power-coupons-cart-button,body.pm .wcf-pc-view-coupons,body.pm [class*="power-coupons"][class*="button"]{display:none!important}

/* Recharge upsell pop-up (2026-10-12) */
html.pm-lock{overflow:hidden}
.pm-up{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:16px;font-family:var(--pm-font);color:var(--pm-ink)}
.pm-up-bg{position:absolute;inset:0;background:rgba(35,19,71,.62)}
.pm-up-box{position:relative;width:100%;max-width:470px;max-height:min(90vh,780px);overflow:auto;overscroll-behavior:contain;background:var(--pm-cream);border:3px solid var(--pm-violet);border-radius:22px;box-shadow:8px 8px 0 var(--pm-violet);padding:20px 20px 0;display:flex;flex-direction:column;gap:12px}
.pm-up-x{position:absolute;top:12px;right:12px;width:44px;height:44px;border:2px solid var(--pm-violet);border-radius:99px;background:var(--pm-paper);color:var(--pm-violet);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}
.pm-up-ok{display:flex;align-items:center;gap:10px;margin:0;padding-right:52px;color:var(--pm-violet)}
.pm-up-check{width:36px;height:36px;flex:none;border-radius:99px;background:var(--pm-lime);border:2px solid var(--pm-violet);display:flex;align-items:center;justify-content:center;color:var(--pm-violet)}
.pm-up-ok b{display:block;font-size:15px;font-weight:800}
.pm-up-ok small{display:block;font-size:13px;color:var(--pm-ink-2)}
body.pm .pm-up-t,.pm-up-t{margin:4px 0 0;font-family:var(--pm-marker);font-weight:400;font-stretch:100%;text-transform:none;letter-spacing:0;font-size:30px;line-height:1.1;color:var(--pm-pink);transform:rotate(-2deg);transform-origin:left bottom;align-self:flex-start}
.pm-up-lead{margin:0;font-size:14px;color:var(--pm-ink)}
.pm-up-list{display:flex;flex-direction:column;gap:8px}
.pm-up-row{display:flex;align-items:center;gap:10px;background:var(--pm-paper);border:2px solid var(--pm-violet);border-radius:14px;padding:8px 10px;transition:box-shadow .12s}
.pm-up-row.pm-on{box-shadow:4px 4px 0 var(--pm-pink)}
.pm-up-row.pm-on .pm-plus{background:var(--pm-lime)}
.pm-up-dot{width:42px;height:42px;flex:none;border-radius:99px;background:var(--c,var(--pm-cream-2));border:2px solid var(--pm-violet);display:flex;align-items:center;justify-content:center;overflow:hidden}
body.pm .pm-up-dot img{width:34px;height:34px;object-fit:contain;display:block}
.pm-up-name{flex:1;min-width:0;color:var(--pm-violet)}
.pm-up-name b{display:block;font-size:14px;font-weight:800;line-height:1.25}
.pm-up-name small{display:block;font-size:12px;color:var(--pm-ink-2)}
.pm-up-row .pm-step{flex:none;gap:2px}
.pm-up-more{border-top:2px dashed var(--pm-violet);padding-top:12px}
.pm-up-more p{margin:0 0 8px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--pm-violet)}
.pm-up-pills{display:flex;flex-wrap:wrap;gap:6px}
body.pm .pm-up-pill,.pm-up-pill{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:6px 12px;border:2px solid var(--pm-violet);border-radius:99px;background:var(--c,var(--pm-paper));color:var(--pm-violet);font-family:var(--pm-font);font-size:13px;font-weight:800;cursor:pointer;line-height:1.1}
.pm-up-pill span{font-size:17px;font-weight:900;color:var(--pm-violet)}
.pm-up-pill:hover{box-shadow:3px 3px 0 var(--pm-violet)}
.pm-up .pm-err{margin:0}
.pm-up-foot{position:sticky;bottom:0;margin:4px -20px 0;padding:12px 20px calc(16px + env(safe-area-inset-bottom,0px));background:var(--pm-cream);border-top:3px solid var(--pm-violet);display:flex;flex-direction:column;gap:8px}
.pm-up-sum{display:flex;align-items:baseline;justify-content:space-between;gap:10px;color:var(--pm-violet)}
.pm-up-sum b{font-size:24px;font-weight:800;font-stretch:125%}
.pm-up-sum span{font-size:13px;font-weight:700;text-align:right}
body.pm .pm-up-yes,.pm-up-yes{width:100%;text-align:center}
body.pm .pm-up-no,.pm-up-no{width:100%;background:var(--pm-paper);border:3px solid var(--pm-violet);border-radius:14px;color:var(--pm-violet);font-family:var(--pm-font);font-weight:800;font-size:15px;text-decoration:none;padding:12px 16px;cursor:pointer;min-height:48px}
body.pm .pm-up-no:hover{background:var(--pm-cream-2)}
.pm-up-no[hidden]{display:none}
.pm-up-no:disabled{opacity:.5;cursor:default}
@media(max-width:600px){.pm-up{align-items:flex-end;padding:0}.pm-up-box{max-width:none;max-height:92vh;border-radius:22px 22px 0 0;border-width:3px 0 0;box-shadow:none;padding:18px 16px 0}.pm-up-foot{margin:4px -16px 0;padding-left:16px;padding-right:16px}.pm-up-t{font-size:27px}}
@media(prefers-reduced-motion:reduce){.pm-up-row{transition:none}}
