/* A full-viewport falling-food board. JS repeats tile rows for the real aspect
   ratio, while every cat/food sprite retains its original pixel proportions. */
.feed-laifu#chapterGameRoot,.feed-laifu{--feed-ink:#efd9e7;--feed-muted:#b8adbf;position:absolute;inset:0;display:block;width:100%;height:100%;min-height:0;max-width:none;max-height:none;box-sizing:border-box;margin:0;padding:0;color:var(--feed-ink);overflow:hidden;isolation:isolate;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;overscroll-behavior:none}
.feed-laifu *{box-sizing:border-box;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.feed-laifu button{touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.feed-laifu .feed-stage{position:absolute;z-index:0;inset:0;width:100%;height:100%;overflow:hidden;border:0;background:#100b19}
.feed-laifu canvas{display:block;width:100%;height:100%;image-rendering:pixelated;object-fit:fill;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;outline-offset:-4px}
.feed-laifu .feed-heading{position:absolute;z-index:4;inset:0 0 auto;width:100%;height:calc(58px + env(safe-area-inset-top));padding:calc(12px + env(safe-area-inset-top)) 72px 12px;text-align:center;background:linear-gradient(#180f23f5,#180f23d9,transparent);pointer-events:none}
.feed-laifu .feed-heading .eyebrow{display:none}
.feed-laifu h2{font-size:clamp(20px,5.6vw,26px);margin:0;line-height:1.2;text-align:center;text-wrap:balance;text-shadow:2px 2px #050811}
.feed-laifu .feed-close{pointer-events:auto;position:absolute;right:8px;top:calc(3px + env(safe-area-inset-top));width:44px;height:44px;padding:0;border:0;background:#36243bb3;color:var(--feed-muted);font:26px/1 monospace}
.feed-laifu .feed-meter{position:absolute;z-index:2;top:calc(47px + env(safe-area-inset-top));left:16px;right:16px;display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:25px;padding:4px 9px;border:1px solid #76526e;background:#21142ce8;color:#d7d4df;font-size:12px;pointer-events:none}
.feed-laifu .feed-score{min-width:46px;text-align:left;color:#f1c9df;font-variant-numeric:tabular-nums}
.feed-laifu .feed-progress{height:8px;flex:1;min-width:50px;padding:1px;border:1px solid #76506e;background:#160e20;overflow:hidden}
.feed-laifu .feed-progress i{display:block;height:100%;width:0;background:#c58dad;box-shadow:inset 0 1px #f3c9df}
.feed-laifu .feed-belly{display:flex;align-items:center;justify-content:center;gap:3px;height:10px}
.feed-laifu .feed-belly i{display:block;width:12px;height:7px;border:1px solid #694762;background:#38243d}
.feed-laifu .feed-belly i[data-lit=true]{background:var(--belly-color);border-color:#f0c7c1}
.feed-laifu .feed-instructions{position:absolute;z-index:2;top:calc(78px + env(safe-area-inset-top));left:25px;right:25px;margin:0;color:#c6acc5;font-size:10px;line-height:1.5;text-align:center;text-wrap:balance;pointer-events:none}
.feed-laifu .feed-instructions br{display:none}
.feed-laifu .feed-instructions span{white-space:nowrap}
.feed-laifu .feed-overlay{position:absolute;z-index:3;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:25px;background:#100b19cb;text-align:center;touch-action:none}
.feed-laifu .feed-overlay-copy{font-size:16px;line-height:1.6;text-wrap:balance;margin:0;max-width:260px;text-shadow:1px 2px #050911}
.feed-laifu .feed-overlay[hidden],.feed-laifu .feed-ending[hidden],.feed-laifu .feed-controls[hidden],.feed-laifu .feed-skip[hidden],.feed-laifu .feed-status[hidden]{display:none}
.feed-laifu .feed-controls{position:absolute;z-index:2;bottom:calc(12px + env(safe-area-inset-bottom));left:18px;right:18px;display:grid;grid-template-columns:minmax(70px,1fr) 86px minmax(70px,1fr);gap:14px;height:58px}
.feed-laifu .feed-controls button{min-height:54px;border:1px solid #9b7694;border-bottom:4px solid #422743;background:#38243ce8;color:#efe1e9;font:inherit;font-size:13px;border-radius:0;box-shadow:2px 3px #050911b3}
.feed-laifu .feed-controls .feed-left,.feed-laifu .feed-controls .feed-right{font-size:32px}
.feed-laifu .feed-controls button:active{background:#673d57;border-color:#d9a3bf;transform:translateY(2px);box-shadow:none}
.feed-laifu .feed-status{position:absolute;z-index:2;bottom:calc(82px + env(safe-area-inset-bottom));left:24px;right:24px;min-height:16px;margin:0;color:#d9c0d4;font-size:11px;line-height:1.5;text-align:center;text-wrap:balance;pointer-events:none;text-shadow:1px 1px #050911}
.feed-laifu .feed-skip{position:absolute;z-index:3;top:calc(5px + env(safe-area-inset-top));left:7px;display:block;margin:0;padding:10px 10px;min-height:40px;font-size:11px;text-align:center;border:0!important;background:transparent!important;color:#c7afc7!important}
.feed-laifu .feed-ending{position:absolute;z-index:3;top:36%;left:50%;transform:translateX(-50%);width:min(86%,340px);padding:20px 18px;border:1px solid #9c7a93;background:#21142eea;text-align:center;box-shadow:4px 4px #050911c9}
.feed-laifu .feed-result{font-size:14px;line-height:1.65;text-wrap:balance;margin:0 0 16px;text-align:center}
.feed-laifu .primary-button{min-height:48px;padding:12px 18px;font-size:13px;text-align:center;max-width:100%;text-wrap:balance;border-color:#cd9bbd;background:#4c2b4b;box-shadow:3px 3px #050911}
.feed-laifu .feed-result .feed-ending-line{display:block;white-space:nowrap}
.feed-laifu .feed-finish{width:100%}
@media(prefers-reduced-motion:reduce){.feed-laifu *{scroll-behavior:auto;transition:none;animation:none}}
