/* Scoped to Meals On; exact original paths, shared pause/visibility controller. */
.work-art.art-meals-on{background:#d59158;container-type:inline-size}
.art-meals-on .meals-surface{display:block;position:absolute;inset:0;overflow:hidden;background:linear-gradient(115deg,#b9a333 0%,#d99b55 45%,#df805f 100%)}
.art-meals-on .meals-surface::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 75% 10%,#fff6 0%,transparent 65%);opacity:.24}
.art-meals-on .meals-master{position:absolute!important;width:45%!important;height:auto!important;max-width:none!important;left:10%!important;top:19%!important;object-fit:contain!important;transform:none!important;filter:none!important;z-index:2}
.art-meals-on .meals-lines{position:absolute;display:block;width:61%;height:47%;right:-8%;bottom:4%;opacity:.84;clip-path:inset(0)}
.art-meals-on .meals-lines img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:contain!important;transform:none!important;filter:none!important}
.art-meals-on .meals-lines svg{display:block;width:100%;height:100%;overflow:visible}
.art-meals-on .meals-stroke{transform-box:fill-box;transform-origin:center;clip-path:inset(0);opacity:1}
.portfolio-motion-running .art-meals-on .meals-stroke{animation-duration:10s;animation-timing-function:cubic-bezier(.3,0,.2,1);animation-iteration-count:infinite;animation-fill-mode:both;animation-delay:var(--meals-delay);animation-play-state:var(--art-play-state)}
.portfolio-motion-running .art-meals-on .meals-from-left{animation-name:meals-line-from-left}
.portfolio-motion-running .art-meals-on .meals-from-right{animation-name:meals-line-from-right}
@keyframes meals-line-from-left{0%,4%{clip-path:inset(0 100% 0 0);transform:translateX(-18px);opacity:0}8%{opacity:1}25%,72%{clip-path:inset(0);transform:translateX(0);opacity:1}96%,100%{clip-path:inset(0 0 0 100%);transform:translateX(14px);opacity:0}}
@keyframes meals-line-from-right{0%,4%{clip-path:inset(0 0 0 100%);transform:translateX(18px);opacity:0}8%{opacity:1}25%,72%{clip-path:inset(0);transform:translateX(0);opacity:1}96%,100%{clip-path:inset(0 100% 0 0);transform:translateX(-14px);opacity:0}}
.art-meals-on .meals-motion-control{position:absolute;z-index:3;right:16px;bottom:16px;border:1px solid #fff7;border-radius:24px;background:#463f2a99;color:#fff;padding:8px 14px;font:inherit;font-size:12px;cursor:pointer}
@media(prefers-reduced-motion:reduce){.art-meals-on .meals-stroke{animation:none!important;clip-path:inset(0)!important;transform:none!important;opacity:1!important}}
@media print{.art-meals-on *{animation:none!important}.art-meals-on .meals-stroke{clip-path:inset(0)!important;transform:none!important;opacity:1!important}.meals-motion-control{display:none!important}}
