/* Le Petit Potager — paper, light and relief. Calendar colours are inherited
   from pp_visual_season() / body.pp-season-*. No second seasonal calendar. */
body{
 --pp-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140' viewBox='0 0 140 140'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.84' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23574631' opacity='.045' filter='url(%23g)' d='M0 0h140v140H0z'/%3E%3C/svg%3E");
 --pp-depth-paper:#fffdf8;
 --pp-depth-ground:color-mix(in srgb,var(--season-wash) 22%,#faf8f0);
 --pp-depth-rule:color-mix(in srgb,var(--season-deep) 16%,#f7f3e9);
 --pp-depth-shadow:color-mix(in srgb,var(--season-deep) 13%,transparent);
 --pp-depth-low:0 2px 3px #38271508,0 10px 24px -10px var(--pp-depth-shadow);
 --pp-depth-high:0 2px 3px #3827150b,0 18px 36px -14px var(--pp-depth-shadow);
 --pp-depth-sheen:linear-gradient(135deg,#ffffffa6,transparent 52%,#38271506);
 background-color:var(--pp-depth-ground);
 background-image:var(--pp-grain);
}
body.woocommerce-shop,body.tax-product_cat,body.woocommerce-cart,body.woocommerce-account{background-color:var(--pp-depth-ground);background-image:var(--pp-grain)}
.pp-header{box-shadow:0 1px 0 #fff,0 7px 18px -14px var(--pp-depth-shadow)}
.pp-arrival-bar{background-image:var(--pp-grain),linear-gradient(100deg,#ffffff7a,transparent);box-shadow:inset 0 1px #fff9,inset 0 -1px #fff7,0 4px 12px -8px var(--pp-depth-shadow)}
.pp-welcome-open>span,.pp-season-badge span{box-shadow:inset 0 1px #ffffff65,0 2px 0 #38271517,0 5px 10px #3827150d}

/* A softly lit paper stage, with one sculpted seasonal disc behind the produce. */
.pp-maison-hero{
 background:var(--pp-grain),radial-gradient(ellipse at 14% 10%,#fffdf7 0,transparent 52%),linear-gradient(115deg,color-mix(in srgb,var(--season-wash) 72%,#fffdf8),var(--season-wash));
 box-shadow:inset 0 1px #fff,inset 0 -1px #ffffff65;
}
.pp-maison-hero:before{
 width:490px;height:490px;right:7%;top:74px;
 background:radial-gradient(circle at 30% 22%,#fff9,transparent 55%),linear-gradient(145deg,color-mix(in srgb,var(--season-accent-2) 44%,var(--season-wash)),color-mix(in srgb,var(--season-accent) 42%,var(--season-wash)));
 border:1px solid #ffffff94;
 box-shadow:inset 2px 3px 5px #ffffffa6,inset -10px -14px 28px #3827150d,18px 32px 48px -17px var(--pp-depth-shadow);
}
.pp-season-float{filter:drop-shadow(1px 3px 2px #3827151a)}
.pp-market-preview-grid a{
 background-color:#fffdf8;background-image:var(--pp-grain),var(--pp-depth-sheen);
 border:1px solid #fffc;box-shadow:inset 0 1px 1px #fff,0 3px 0 color-mix(in srgb,var(--season-wash) 65%,#dcd8ce),0 16px 33px -10px var(--pp-depth-shadow);
 animation:none;backdrop-filter:none;transition:transform .22s,box-shadow .22s;
}
.pp-market-preview-grid a:first-child{transform:rotate(-1.2deg)}
.pp-market-preview-grid a:nth-child(2){transform:rotate(1.1deg)}
.pp-market-preview-grid a:nth-child(3){transform:rotate(-.6deg)}
.pp-market-preview-grid a img{filter:none;mix-blend-mode:multiply}
.pp-maison-ribbon{background-image:linear-gradient(110deg,#fff1,transparent 55%,#0001);box-shadow:inset 0 1px #ffffff2b,0 4px 12px #19302412}

/* The approved coloured basket headings and small ingredient photos stay intact. */
.pp-clear-basket,.pp-routine-choice,.pp-path,.pp-meetings>article,.pp-account-card,.pp-account-panel,.pp-composition-gallery{
 background-image:var(--pp-grain),var(--pp-depth-sheen);
 box-shadow:inset 0 1px 1px #fff,var(--pp-depth-high);
}
.pp-clear-basket{border-color:var(--pp-depth-rule);border-top-color:var(--season-accent)}
.pp-clear-basket.pp-tone-familial{border-top-color:#8b9b63}.pp-clear-basket.pp-tone-fruit{border-top-color:#e2ba4d}.pp-clear-basket.pp-tone-selection{border-top-color:#aa87ac}
.pp-clear-card-intro{background-image:var(--pp-grain),linear-gradient(135deg,#ffffff5c,transparent 65%,#38271507);box-shadow:inset 0 1px #fffa,inset 0 -1px #3827150c}
.pp-clear-card-intro .pp-clear-basket-icon{border:1px solid #fffc;background-image:linear-gradient(135deg,#fffe,#fff4);box-shadow:inset 0 1px #fff,0 3px 0 #3827150c,0 6px 12px #38271510}
.pp-ingredient-thumb{box-shadow:inset 0 1px 2px #3827150c,0 1px 0 #fff}
.pp-routine-choice{background-image:var(--pp-grain),linear-gradient(to bottom,var(--basket-heading,var(--season-wash)) 0 105px,#fffdf7 105px)}
.pp-clear-sub-link,.pp-once-label{background-image:var(--pp-depth-sheen);border:1px solid var(--pp-depth-rule);box-shadow:inset 0 1px #fff9,var(--pp-depth-low)}
.pp-path-abonnement,.pp-routine-intro{background-image:var(--pp-grain),radial-gradient(ellipse at 0 0,#ffffff1f,transparent 65%);box-shadow:inset 0 1px #fff4,0 4px 0 #072f23,0 19px 35px -17px #082e284d}
.pp-path-abonnement{box-shadow:inset 0 1px #fff4,0 5px 0 var(--season-accent-2),0 19px 35px -17px #082e284d}
.pp-routine-offer{background-image:var(--pp-grain),var(--pp-depth-sheen);border:1px solid #fff9;box-shadow:inset 0 1px #fff,0 4px 0 #d9cfb5,0 17px 28px -8px #041c2259}
.pp-maison-season{background-color:color-mix(in srgb,var(--season-wash) 34%,#f4f5ed);background-image:var(--pp-grain);box-shadow:inset 0 1px #fffc,inset 0 -1px #3827150a}
.pp-season-shop-banner{background-image:var(--pp-grain),radial-gradient(ellipse at 88% -70%,#fffe,transparent 68%),linear-gradient(115deg,var(--season-wash),color-mix(in srgb,var(--season-accent) 32%,#fffdf8));border:1px solid #fff9;box-shadow:inset 0 1px #fff,var(--pp-depth-high)}
body .woocommerce ul.products li.product:has(.pp-shop-buy),body.woocommerce-page ul.products li.product:has(.pp-shop-buy){
 background-image:var(--pp-depth-sheen);border-color:var(--pp-depth-rule);box-shadow:inset 0 1px #fff,var(--pp-depth-high);
}
body .woocommerce ul.products li.product:not(.pp-text-basket)>.woocommerce-loop-product__link>img{
 box-shadow:inset 0 1px 3px #38271508,0 2px 0 #fffc,0 7px 15px -11px var(--season-deep);
}
body.woocommerce-cart .woocommerce-cart-form__contents tr.cart_item{background-image:var(--pp-depth-sheen)!important;box-shadow:inset 0 1px #fff,var(--pp-depth-high)}
body.woocommerce-cart .cart-collaterals .cart_totals{background-image:var(--pp-grain),var(--pp-depth-sheen)!important;box-shadow:inset 0 1px #fff,var(--pp-depth-high)!important}
.pp-cart-minimum{box-shadow:inset 0 1px #fff9,0 2px 5px #38271506}

/* Tactile controls: light on the upper edge, soft contact shadow underneath. */
body :is(.pp-button,.pp-maison-btn,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.wc-block-components-button,.pp-reception-button,.pp-shop-add),
#pp-journey-save,.pp-welcome-main-cta,.pp-company-code-row button{
 background-image:linear-gradient(180deg,#ffffff14,transparent 55%,#0000000c)!important;
 box-shadow:inset 0 1px 0 #ffffff40,inset 0 -1px 0 #0002,0 3px 0 #18322538,0 7px 14px -7px #193d244a;
}
.pp-shop-format,#pp-journey-postcode,.pp-company-code-row input{box-shadow:inset 0 2px 4px #38271506,0 1px #fff}
.pp-clear-basket .pp-shop-format:has(option:only-child){padding-left:12px;padding-right:12px}
body :is(.pp-button,.pp-maison-btn,.woocommerce a.button,.woocommerce button.button,.pp-shop-add):active,
#pp-journey-save:not(:disabled):active,.pp-welcome-main-cta:active{transform:translateY(1px);box-shadow:inset 0 1px 2px #0002,0 1px 0 #18322538}
body :is(button,a.button):disabled{box-shadow:none!important;background-image:none!important}

/* Customer dialogs: cotton paper, inset compartments, embossed seasonal seals. */
#pp-journey-dialog,#pp-welcome-modern{
 background-image:var(--pp-grain),radial-gradient(ellipse at 0 0,#fff 0,transparent 60%),linear-gradient(145deg,#fffdf8,color-mix(in srgb,var(--season-wash) 26%,#fffdf8));
 border-color:#fffc;box-shadow:inset 0 1px 2px #fff,inset 0 -2px 1px #3827150f,0 6px 0 color-mix(in srgb,var(--season-wash) 30%,#e2ddd2),0 24px 80px #10241e42;
}
#pp-journey-dialog::backdrop,#pp-welcome-modern::backdrop{background:#18251f8c;backdrop-filter:blur(5px)}
.pp-journey-audience{box-shadow:inset 0 2px 5px #3827150c,inset 0 -1px #fff}
.pp-journey-audience button[aria-pressed=true]{background-image:var(--pp-depth-sheen);box-shadow:inset 0 1px #fff,0 2px 5px #38271518}
.pp-journey-kinds>button,#pp-journey-places button,#pp-journey-dates button,.pp-welcome-once button{
 background-image:var(--pp-depth-sheen);box-shadow:inset 0 1px #fff,var(--pp-depth-low);transition:box-shadow .2s,transform .2s,border-color .2s;
}
.pp-journey-kinds>button[aria-pressed=true],#pp-journey-places button[aria-pressed=true]{
 background-image:linear-gradient(135deg,#fff9,transparent);box-shadow:inset 0 0 0 1px var(--pp-signature-ink),inset 0 2px 5px #3827150c,0 1px #fff;
}
#pp-journey-dates button[aria-pressed=true]{box-shadow:inset 0 1px #fff4,0 3px 7px var(--pp-depth-shadow)}
#pp-journey-home,#pp-company-access{background-image:var(--pp-grain),linear-gradient(135deg,#fff6,transparent);box-shadow:inset 0 1px #fff9,inset 0 2px 7px #38271506}
.pp-welcome-stamp{
 background-image:var(--pp-grain),radial-gradient(ellipse at 28% 12%,#fffdf4 0,transparent 65%),linear-gradient(135deg,var(--season-wash),color-mix(in srgb,var(--season-accent-2) 44%,var(--season-wash)));
 border-color:color-mix(in srgb,var(--season-accent-2) 50%,#fff);transform:rotate(2deg);
 box-shadow:inset 2px 2px 2px #fffc,inset -2px -3px 3px #38271512,0 4px 0 color-mix(in srgb,var(--season-accent-2) 28%,#d6cab1),0 15px 23px -9px var(--pp-depth-shadow);
}
.pp-welcome-stamp strong{text-shadow:0 1px 0 #fffc,0 -1px 0 #38271524}
.pp-welcome-stamp:before{box-shadow:inset 0 1px #fff9,0 1px #fff9}
body.woocommerce-account .pp-club-hero,.pp-club-levels li:last-child{
 background-image:var(--pp-grain),radial-gradient(ellipse at 10% 0,#ffffff24,transparent 75%),linear-gradient(130deg,transparent,#0000001a);
 box-shadow:inset 0 1px #ffffff5c,0 4px 0 color-mix(in srgb,var(--season-deep) 70%,#211b17),0 16px 28px -12px var(--pp-depth-shadow);
}
.pp-club-points{background-image:var(--pp-grain),linear-gradient(135deg,#fffb,transparent);box-shadow:inset 0 1px #fff,var(--pp-depth-low)}
.pp-club-levels li{background-image:var(--pp-grain),var(--pp-depth-sheen);box-shadow:inset 0 1px #fff,0 3px 0 #e6e1d7,var(--pp-depth-high)}
.pp-club-levels .pp-club-medallion{
 background-image:radial-gradient(circle at 26% 19%,#fff,transparent 60%),linear-gradient(145deg,var(--season-wash),color-mix(in srgb,var(--season-accent-2) 33%,#e2d6bd));
 border-color:color-mix(in srgb,var(--season-accent-2) 45%,#d2c6ab);outline-color:var(--pp-signature-rule);
 box-shadow:inset 2px 2px 2px #fff,inset -2px -3px 4px #66502a24,0 3px 0 #c4b999,0 9px 13px -5px #38271530;
}
.pp-club-medallion .pp-signature-emblem{filter:drop-shadow(0 1px 0 #fff9)}
.pp-club-levels li:last-child .pp-club-medallion{
 background:radial-gradient(circle at 25% 20%,#fff0bc,transparent 65%),linear-gradient(140deg,#dfc174,#b79b55);
 border-color:#f7de98;outline-color:#f8deb84d;color:#5f491d;
 box-shadow:inset 2px 2px 2px #fff0bd,inset -2px -3px 3px #795d2a4d,0 3px 0 #8d743c,0 10px 16px -5px #17110a66;
}
.pp-club-hero>.pp-signature-emblem{filter:drop-shadow(0 2px 1px #0003)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 .pp-clear-basket:hover,.pp-path:hover,body .woocommerce ul.products li.product:has(.pp-shop-buy):hover{transform:translateY(-4px);box-shadow:inset 0 1px #fff,0 21px 36px -13px var(--pp-depth-shadow)}
 .pp-market-preview-grid a:hover{transform:translateY(-4px) rotate(0)}
 .pp-journey-kinds>button:not([aria-pressed=true]):hover,#pp-journey-places button:not([aria-pressed=true]):hover{transform:translateY(-2px);box-shadow:var(--pp-depth-high)}
}
@media(max-width:760px){
 .pp-maison-hero:before{width:290px;height:290px;right:-60px;top:210px;opacity:.6}
 .pp-market-preview-grid a:first-child,.pp-market-preview-grid a:nth-child(2),.pp-market-preview-grid a:nth-child(3){transform:none}
 .pp-clear-basket,.pp-routine-choice{box-shadow:inset 0 1px #fff,0 3px 0 #e6e1d777,0 13px 24px -14px var(--pp-depth-shadow)}
 .pp-welcome-stamp{transform:rotate(1.5deg)}
}
@media(prefers-reduced-motion:reduce){
 .pp-market-preview-grid a,.pp-clear-basket,.pp-path,.pp-journey-kinds>button,#pp-journey-places button,#pp-journey-dates button{transition:none!important;transform:none!important}
}
.pp-motion-paused :is(.pp-market-preview-grid a,.pp-clear-basket,.pp-path){transition:none}
