/* Keep each decorative 3D scene below the loaf's independent 3D context.
   A flat parent prevents rotated SVG geometry from depth-sorting over bread. */
.fresh-visual{isolation:isolate;transform-style:flat}
.bread-background{position:absolute;inset:0;z-index:0;isolation:isolate;transform-style:flat;perspective:1100px;pointer-events:none}
.fresh-loaf{z-index:2;transform-style:preserve-3d}
.fresh-label{z-index:3}

/* Three chasing arrows, with broad, clear heads and restrained satin colour. */
.bread-cycle{transform-style:flat;transform:translate(-50%,-50%) rotateX(calc(52deg + var(--food-progress,0)*8deg)) rotateZ(calc(-25deg + var(--food-progress,0)*360deg));opacity:calc(.34 + var(--food-night,0)*.34)}
.bread-cycle .recycle-guide{stroke:currentColor;stroke-width:.6;opacity:.17}
.bread-cycle .recycle-arrow{fill:url(#bread-cycle-sheen);stroke:currentColor;stroke-opacity:.28;stroke-width:.45;stroke-linejoin:round}
.bread-cycle .recycle-arrow-2{opacity:.86}
.bread-cycle .recycle-arrow-3{opacity:.72}
@media(prefers-reduced-motion:reduce){.bread-cycle{transform:translate(-50%,-50%) rotateX(55deg) rotateZ(-25deg)!important}}
