.fridge-game{width:min(100%,510px);margin:0 auto;color:#254251}
.fridge-hud{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}
.fridge-hud>div{min-width:0;padding:7px 8px;text-align:center;background:#eff9f5;border:2px solid #9bbab5;border-radius:14px;box-shadow:0 3px 0 #b8cfc9}
.fridge-hud small{display:block;font-size:11px;font-weight:800;color:#647d80}
.fridge-hud strong{display:block;font-size:19px;font-weight:900;font-variant-numeric:tabular-nums}
.fridge-scene{position:relative;width:100%;padding:19px 27px 20px 16px;border:4px solid #407b86;border-radius:26px;background:linear-gradient(135deg,#7bbbc5 0%,#d8f2ed 22%,#91cbd1 100%);box-shadow:inset 0 0 0 5px #d5f1eb,0 8px 0 #467783;isolation:isolate}
.fridge-case{padding:10px;border:3px solid #568e96;border-radius:14px;background:#ddf0e9;box-shadow:inset 0 4px 14px #537b8180}
.fridge-board{display:grid;grid-template-columns:repeat(var(--fridge-size),1fr);gap:4px;width:min(100%,360px);aspect-ratio:1;margin:auto;padding:5px;border:2px solid #8bb9b5;border-radius:8px;background:#bbd6cd}
.fridge-cell{position:relative;display:grid;place-items:center;min-width:0;min-height:0;padding:0;border:2px solid #a0c0ba;border-radius:8px;background:linear-gradient(#f9fff9,#e0eee8);color:#4b7c89;font-family:inherit;font-size:clamp(16px,5.5vw,34px);line-height:1;cursor:pointer;touch-action:manipulation;transition:transform .12s,background .12s,border-color .12s}
.fridge-cell:not(:disabled):hover{border-color:#246e83;transform:scale(.97)}
.fridge-cell.is-blocked{background:repeating-linear-gradient(130deg,#a7c9d7 0 9px,#c7e2ea 9px 18px);border-color:#9bb7be;color:#4d899e;cursor:not-allowed}
.fridge-cell.is-filled{background:var(--food);border-color:#ffffff8c;box-shadow:inset 0 -4px 0 #394e531a}
.fridge-cell.is-preview:not(.is-filled){background:#70d9bb;border-color:#248e72;box-shadow:inset 0 0 0 2px #ffffff}
.fridge-cell.is-preview.is-invalid:not(.is-filled){background:#f3b4a7;border-color:#d85d52}
.fridge-cell.is-hint:not(.is-filled){animation:fridge-hint 1s ease-in-out infinite alternate;border-color:#e9a226;box-shadow:inset 0 0 0 3px #ffd761}
.fridge-cell.is-anchor:after{content:'';position:absolute;width:8px;height:8px;border:2px solid #184d61;border-radius:50%;background:#fff;box-shadow:0 0 0 2px #ffffffae}
.fridge-cell:focus-visible,.fridge-piece:focus-visible,.fridge-game button:focus-visible{outline:3px solid #eb675c;outline-offset:2px;z-index:1}
.fridge-handle{position:absolute;right:7px;top:25%;width:8px;height:36%;border-radius:10px;background:linear-gradient(90deg,#6e9ba6,#ecffff,#679ba9);box-shadow:1px 2px 3px #254e5b88}
.fridge-overlay{position:absolute;inset:0;z-index:3;display:grid;place-items:center;padding:18px;background:#1b46568c;backdrop-filter:blur(2px);border-radius:22px}
.fridge-overlay[hidden]{display:none}
.fridge-dialog{width:min(100%,340px);padding:21px 18px;border:3px solid #315c66;border-radius:20px;background:#fffdf2;box-shadow:0 8px 0 #20415088;text-align:center}
.fridge-dialog h2{margin:0 0 9px;color:#264858;font-size:24px;line-height:1.25}
.fridge-dialog p{margin:0 0 16px;color:#496574;font-size:15px;line-height:1.5}
.fridge-dialog button{min-width:150px}
.fridge-tray{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:17px 0 10px}
.fridge-piece{display:grid;justify-items:center;align-content:start;gap:1px;min-height:92px;padding:6px 3px;border:2px solid #a9c4bd;border-radius:14px;background:#fffdf4;color:#334f5a;font-family:inherit;box-shadow:0 4px 0 #bed0c5;cursor:pointer;touch-action:manipulation}
.fridge-piece.is-selected{border-color:#e48556;background:#fff2db;box-shadow:0 4px 0 #e0ba93}
.fridge-piece:disabled{opacity:.38;cursor:default;box-shadow:none}
.fridge-piece-icon{font-size:23px;line-height:1.2}
.fridge-piece-name{font-size:12px;font-weight:900;line-height:1.3}
.fridge-mini{display:grid;grid-template-columns:repeat(var(--cols),9px);grid-auto-rows:9px;gap:1px;margin-top:3px}
.fridge-mini i{width:9px;height:9px;border:1px solid #5a7a7770;border-radius:2px;background:var(--food)}
.fridge-mini i.empty{visibility:hidden}
.fridge-mini i.anchor{position:relative;box-shadow:inset 0 0 0 2px #294f60}
.fridge-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.fridge-actions .button{min-height:43px;padding:6px 4px;font-size:14px;white-space:nowrap}
.fridge-game .toy-status{min-height:2.6em;margin:9px 0 4px;text-align:center}
.fridge-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.fridge-controls .button{min-width:0;padding:7px 3px;font-size:14px;white-space:nowrap}
@keyframes fridge-hint{to{box-shadow:inset 0 0 0 4px #fff4a9,0 0 10px #f8bc49}}
@media(max-width:480px){.toy-page:has(.fridge-game) .toy-card{padding:14px 11px}.toy-page:has(.fridge-game) .toy-card h1{font-size:22px}.toy-page:has(.fridge-game) .toy-instruction{margin:5px 0 10px;line-height:1.4}.fridge-hud{gap:6px;margin-bottom:8px}.fridge-hud>div{padding:5px}.fridge-hud strong{font-size:16px}.fridge-scene{padding:12px 23px 12px 11px;border-width:3px}.fridge-case{padding:7px}.fridge-board{gap:3px;padding:3px}.fridge-cell{border-width:1px}.fridge-tray{gap:5px;margin:12px 0 8px}.fridge-piece{min-height:75px;padding:4px 2px}.fridge-piece-icon{font-size:19px}.fridge-piece-name{font-size:11px}.fridge-mini{grid-template-columns:repeat(var(--cols),7px);grid-auto-rows:7px}.fridge-mini i{width:7px;height:7px}.fridge-dialog{padding:17px 14px}.fridge-dialog h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){.fridge-cell{transition:none}.fridge-cell.is-hint{animation:none}}
