.game-shell[data-game=food] .scene{position:relative;overflow:hidden;background:#7c8b74;touch-action:pan-y}
.food-note-slot{position:relative;align-self:center;display:flex;align-items:center;flex:none;width:var(--food-note-width,210px);height:100%;min-width:0}
.food-napkin{position:relative;isolation:isolate;box-sizing:border-box;width:100%;min-height:var(--food-note-min-height,100px);max-height:var(--food-note-max-height,200px);display:flex;flex-direction:column;padding:2px 7px;border:14px solid transparent;border-image:url('../assets/food-napkin-alpha-v1.png') 210 240 330 220 fill / 14px / 0 stretch;color:#173744;font:var(--food-note-font,14px)/1.45 system-ui;text-align:left;overflow:hidden}
.food-napkin[hidden]{display:none}.food-napkin-art{display:none;position:absolute;inset:0;z-index:-1;width:100%;height:100%;pointer-events:none;overflow:visible}
.food-napkin-copy{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;touch-action:pan-y;overflow-wrap:break-word}.food-napkin-copy:focus{outline:0}.food-napkin-copy:focus-visible{outline:1px dashed #806c47;outline-offset:3px}
.game-shell[data-game=food] .food-napkin .food-info{margin:0;padding:0;border:0;background:transparent;color:inherit;font:inherit}.food-napkin .food-info>strong{display:block;font-size:1.1em;line-height:1.25;font-weight:650}
.game-shell[data-game=food] .food-napkin #status{display:block;margin:3px 0 0;padding:3px 0 0;border:0;border-top:1px solid #778b7355;border-radius:0;background:transparent;min-height:0;max-height:none;height:auto;overflow:visible;font:inherit;color:inherit}.game-shell[data-game=food] .food-napkin #status:empty,.game-shell[data-game=food] .food-napkin #status[hidden]{display:none;margin:0;padding:0;border:0}.game-shell[data-game=food] .food-napkin[data-has-error=true] #status{color:#7b3b29}
.pile-game{--food-face-size:180px;--food-dock-height:128px;--food-dock-overlap:12px;position:relative;box-sizing:border-box;height:100%;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:10px 10px 0;background:radial-gradient(ellipse at 12% 6%,#d3ae6850,transparent 70%),repeating-linear-gradient(2deg,transparent 0 76px,#203c4422 77px 79px,transparent 80px 151px),#7a8c79}
.food-play-area{position:relative;z-index:1;display:flex;align-items:flex-end;justify-content:center;width:100%;min-height:0;height:calc(100% - var(--food-dock-height) + var(--food-dock-overlap));flex:none}
.food-pile-stage{position:relative;flex:none;max-width:100%;isolation:isolate}
.pile-bowl{display:block;position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:hidden}
.food-pile{position:absolute;touch-action:none}
.food-pile .pile-piece{position:absolute;display:block;padding:0;margin:0;min-width:0;border:0;background:none!important;box-shadow:none;outline:0;pointer-events:none;border-radius:0;transform-origin:center;touch-action:none}
.pile-piece .food-figure{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;margin:0;pointer-events:none;filter:none}
.pile-piece .food-hit{position:absolute;inset:0;width:100%;height:100%;pointer-events:auto;cursor:grab;overflow:visible}
.pile-piece .food-hit ellipse{pointer-events:all}
.pile-piece[aria-pressed=true] .food-figure{filter:drop-shadow(0 0 2px #fff0bb) drop-shadow(0 0 2px #fff0bb)}
.pile-piece:focus-visible .food-figure{filter:drop-shadow(0 0 2px #f8d979) drop-shadow(0 0 3px #f8d979)}
.pile-game .food-bins{position:absolute;z-index:2;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,900px);height:var(--food-dock-height);display:grid;grid-template-columns:1fr 1fr;justify-items:center;gap:20px;margin:0;flex:none}
.pile-game .food-destination{position:relative;width:calc(var(--food-face-size)*1.1);height:100%;min-height:0;display:block;padding:0;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0;touch-action:manipulation;cursor:pointer;color:#173744}
.food-destination-art{position:absolute;bottom:calc(var(--food-face-size)*-.335);left:50%;transform:translateX(-50%);display:block;width:var(--food-face-size);height:calc(var(--food-face-size)*1.045);pointer-events:none;filter:drop-shadow(1px 3px 1px #17374435)}
.food-destination-art>svg{display:block;width:100%;height:100%;max-width:none;margin:0;overflow:hidden}
.food-trash-target{width:calc(var(--food-face-size)*1.1);height:calc(var(--food-face-size)*1.1);bottom:calc(var(--food-face-size)*-.52)}
.food-ready .food-destination-art{filter:drop-shadow(0 0 2px #f3e2b3) drop-shadow(1px 3px 1px #17374435)}
.food-destination:hover .food-destination-art,.food-destination:focus-visible .food-destination-art{filter:drop-shadow(0 0 3px #fff1bc) drop-shadow(0 0 3px #fff1bc)}
.pile-game .food-destination:focus-visible{outline:0}
.food-retch-mark{display:none;position:absolute;left:calc(50% - var(--food-face-size)*.17);bottom:2px;width:calc(var(--food-face-size)*.3);height:calc(var(--food-face-size)*.12);pointer-events:none}.food-retch-mark>svg{display:block;width:100%;height:100%}.pile-game[data-food-reaction=retch] .food-retch-mark{display:block}
.food-heart-burst{display:none;position:absolute;inset:0;pointer-events:none}.pile-game[data-food-reaction=celebrate] .food-heart-burst{display:block}.food-heart-burst>svg{position:absolute;opacity:.85;width:calc(var(--food-face-size)*.12);height:calc(var(--food-face-size)*.12)}.food-heart-burst>svg:nth-child(1){left:0;top:28%}.food-heart-burst>svg:nth-child(2){left:15%;top:2%}.food-heart-burst>svg:nth-child(3){right:8%;top:12%}.food-heart-burst>svg:nth-child(4){right:-2%;top:42%}.food-heart-burst>svg:nth-child(5){left:3%;top:60%}
.drag-food{height:72px;padding:0;border:0!important;background:none!important;box-shadow:none!important;outline:0;z-index:10000}
.drag-food .food-figure{width:100%;height:100%;margin:0;filter:drop-shadow(0 5px 3px #17374455)}.drag-food .food-hit{display:none}
@media(max-width:650px){.pile-game{padding:6px 6px 0;--food-dock-overlap:8px}.pile-game .food-bins{gap:9px}.game-shell[data-game=food] .actions,.game-shell[data-game=food] #levels{grid-row:2}.food-play-area{flex-direction:column;align-items:center;justify-content:flex-end}.food-note-slot{order:-1;height:var(--food-note-reserve);align-self:center;align-items:flex-end}.food-napkin{height:auto;padding:1px 6px;border:14px solid transparent;border-image:url('../assets/food-napkin-alpha-v1.png') 210 240 330 220 fill / 14px / 0 stretch}.food-napkin-art{display:none}.game-shell[data-game=food] .food-napkin #status{margin-top:2px;padding-top:2px}}
@media(prefers-reduced-motion:reduce){.food-cat-face{transform:none!important}}

.food-levels-dialog{width:min(520px,calc(100% - 28px))}.food-levels-dialog>p{font:13px/1.6 system-ui;color:#bec8b5;margin:15px 0}
.food-levels-dialog #level-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:7px}.food-levels-dialog #level-grid button{font:12px/1 system-ui;width:100%;aspect-ratio:1;margin:0;padding:0;min-height:32px;background:transparent;color:#e8dcc4;border:1px solid #9cafa060;border-radius:6px}.food-levels-dialog #level-grid button.completed{box-shadow:inset 0 -3px #a8b58b}.food-levels-dialog #level-grid button[aria-current=true]{background:#dccba1;color:#173744;border-color:#dccba1}.game-bottom .food-all-levels{padding-block:5px}
@media(max-width:650px){.food-levels-dialog{padding:18px}.food-levels-dialog #level-grid{grid-template-columns:repeat(8,minmax(0,1fr));gap:6px}}
