.kitchen-page {
  --kitchen-stage-gap: clamp(10px, 2vmin, 28px);
}

.kitchen-page[hidden] {
  display: none;
}

.kitchen-background {
  position: absolute;
  z-index: 10;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: #b9673f;
  isolation: isolate;
  outline: none;
}

.kitchen-wood {
  position: absolute;
  z-index: 0;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  image-rendering: pixelated;
  pointer-events: none;
  user-select: none;
}

.kitchen-stage {
  --kitchen-tablecloth-safe-top: 3.3%;
  --kitchen-conveyor-collision-top: 34.9%;
  --kitchen-conveyor-height: clamp(216px, 18vw, 324px);
  --kitchen-conveyor-center-shift: clamp(18px, 1.5vw, 27px);
  --kitchen-collision-gap: 2%;
  --kitchen-memory-menu-width: 34.5%;
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  width: calc(100vw - 2 * var(--kitchen-stage-gap));
  aspect-ratio: 16 / 9;
  transform: translate(-50%, -50%);
}

@media (min-aspect-ratio: 16 / 9) {
  .kitchen-stage {
    width: auto;
    height: calc(100svh - 2 * var(--kitchen-stage-gap));
  }
}

.kitchen-tablecloth {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter:
    drop-shadow(0.12vmin 0.22vmin 0.08vmin rgb(95 50 36 / 48%))
    drop-shadow(0.12vmin 0.85vmin 0.55vmin rgb(78 39 29 / 38%));
  image-rendering: pixelated;
  pointer-events: none;
  user-select: none;
}

.kitchen-conveyor {
  --kitchen-conveyor-bed-top: 13%;
  --kitchen-conveyor-bed-height: 66.5%;
  --kitchen-conveyor-roller-top: 10%;
  --kitchen-conveyor-roller-height: 73.5%;
  --kitchen-conveyor-front-height: 19.5%;
  --kitchen-conveyor-upper-offset: 2.5%;
  --kitchen-conveyor-front-offset: 3%;
  position: absolute;
  z-index: 2;
  top: calc(
    var(--kitchen-conveyor-collision-top) -
      var(--kitchen-conveyor-center-shift)
  );
  left: 50%;
  width: 120vw;
  height: var(--kitchen-conveyor-height);
  overflow: hidden;
  isolation: isolate;
  transform: translateX(-50%);
  pointer-events: none;
  user-select: none;
}

.kitchen-conveyor__layer {
  position: absolute;
  right: 0;
  left: 0;
  display: block;
  background-position: center top;
  background-repeat: repeat-x;
  image-rendering: pixelated;
}

.kitchen-conveyor__cavity {
  z-index: 1;
  top: var(--kitchen-conveyor-bed-top);
  bottom: calc(
    var(--kitchen-conveyor-front-height) + var(--kitchen-conveyor-front-offset)
  );
  background-image: url("../images/kitchen-conveyor-rear-cavity-v4.png");
  background-size: auto 100%;
}

.kitchen-conveyor__rollers {
  --kitchen-conveyor-roller-frame-position: 0%;
  z-index: 2;
  top: var(--kitchen-conveyor-roller-top);
  height: var(--kitchen-conveyor-roller-height);
  background-image: url("../images/kitchen-conveyor-roller-v2.png");
  background-position: center var(--kitchen-conveyor-roller-frame-position);
  background-size: auto 600%;
  will-change: background-position;
}

.kitchen-conveyor__trays {
  --kitchen-conveyor-tray-offset: 0px;
  z-index: 4;
  top: var(--kitchen-conveyor-bed-top);
  height: var(--kitchen-conveyor-bed-height);
  background-image: url("../images/kitchen-conveyor-tray-v7.png");
  background-position: calc(50% + var(--kitchen-conveyor-tray-offset)) top;
  background-size: auto 100%;
  will-change: background-position;
}

.kitchen-conveyor__upper {
  z-index: 3;
  top: var(--kitchen-conveyor-upper-offset);
  height: var(--kitchen-conveyor-front-height);
  background-image: url("../images/kitchen-conveyor-upper-rail-v5.png");
  background-size: auto 100%;
}

.kitchen-conveyor__front {
  z-index: 5;
  bottom: var(--kitchen-conveyor-front-offset);
  height: var(--kitchen-conveyor-front-height);
  background-image: url("../images/kitchen-conveyor-front-rail-v4.png");
  background-position: center bottom;
  background-size: auto 100%;
  box-shadow:
    0 clamp(3px, 0.28vw, 6px) clamp(2px, 0.2vw, 4px) rgb(67 35 29 / 30%),
    0 clamp(7px, 0.58vw, 12px) clamp(5px, 0.4vw, 8px) rgb(58 30 25 / 20%);
}

.kitchen-bead-tray {
  position: absolute;
  z-index: 3;
  bottom: 6.32%;
  left: 4.76%;
  display: block;
  width: 26.7%;
  height: auto;
  filter:
    drop-shadow(0.12vw 0.2vw 0 rgb(96 48 30 / 36%))
    drop-shadow(0.22vw 0.62vw 0.38vw rgb(73 36 27 / 38%));
  image-rendering: pixelated;
  pointer-events: none;
  user-select: none;
}

.kitchen-oval-placemat {
  position: absolute;
  z-index: 3;
  /* Keep the existing center while opening a small gap below the conveyor. */
  bottom: 4.3%;
  left: 35.675%;
  display: block;
  width: 28.35%;
  height: auto;
  filter: drop-shadow(0 0.42vw 0.34vw rgb(111 58 47 / 17%));
  image-rendering: pixelated;
  pointer-events: none;
  user-select: none;
}

.kitchen-workbench-ironing {
  position: absolute;
  z-index: 4;
  bottom: 8.5%;
  left: 34.15%;
  display: block;
  width: 32%;
  height: auto;
  filter:
    drop-shadow(0.1vw 0.16vw 0 rgb(96 48 30 / 24%))
    drop-shadow(0.16vw 0.44vw 0.3vw rgb(73 36 27 / 25%));
  image-rendering: pixelated;
  pointer-events: none;
  user-select: none;
}

.kitchen-finished-album {
  position: absolute;
  z-index: 3;
  top: 8.3%;
  left: 71.2%;
  display: block;
  width: 21.7%;
  height: auto;
  filter:
    drop-shadow(0.1vw 0.16vw 0 rgb(96 48 30 / 28%))
    drop-shadow(0.2vw 0.48vw 0.32vw rgb(73 36 27 / 28%));
  image-rendering: pixelated;
  pointer-events: none;
  user-select: none;
}

.kitchen-memory-bell {
  --memory-bell-ring-duration: 620ms;
  position: absolute;
  z-index: 4;
  /* Preserve the approved scale and lower the full module as one unit. */
  right: 9.2%;
  bottom: 6.5%;
  width: 17%;
  aspect-ratio: 1 / 1.04;
  isolation: isolate;
}

.kitchen-memory-bell__base,
.kitchen-memory-bell__lid,
.kitchen-memory-bell__plaque {
  display: block;
  width: 100%;
  height: auto;
  image-rendering: pixelated;
  pointer-events: none;
  user-select: none;
}

.kitchen-memory-bell__base {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  filter:
    drop-shadow(0.22vw 0.3vw 0 rgb(91 50 35 / 28%))
    drop-shadow(0 0.52vw 0.42vw rgb(91 50 35 / 17%));
}

.kitchen-memory-bell__lid-shadow {
  position: absolute;
  z-index: 2;
  top: 58.5%;
  left: 50%;
  width: 51%;
  height: 8.5%;
  border-radius: 50%;
  background: rgb(96 49 39 / 35%);
  filter: blur(clamp(1px, 0.16vw, 4px));
  opacity: 0.82;
  transform: translate(-50%, -50%);
  transform-origin: center;
  pointer-events: none;
}

.kitchen-memory-bell__trigger {
  position: absolute;
  z-index: 3;
  top: 5.8%;
  left: 17%;
  width: 66%;
  aspect-ratio: 902 / 860;
  padding: 0;
  border: 0;
  border-radius: 50%;
  color: inherit;
  background: transparent;
  cursor: pointer;
  touch-action: manipulation;
  transform: translate3d(0, 0, 0) rotate(0deg);
  transform-origin: 50% 84%;
  -webkit-tap-highlight-color: transparent;
}

.kitchen-memory-bell__trigger:focus-visible {
  outline: clamp(2px, 0.16vw, 4px) dashed #fff4d5;
  outline-offset: clamp(2px, 0.18vw, 5px);
  filter: drop-shadow(0 0 0.26vw rgb(116 53 49 / 52%));
}

.kitchen-memory-bell__plaque {
  position: absolute;
  z-index: 4;
  top: 68.5%;
  left: 14.5%;
  width: 71%;
  filter:
    drop-shadow(0.18vw 0.24vw 0 rgb(89 46 33 / 29%))
    drop-shadow(0 0.36vw 0.28vw rgb(89 46 33 / 16%));
}

.kitchen-memory-bell.is-ringing .kitchen-memory-bell__trigger {
  will-change: transform;
  animation: kitchen-memory-bell-ring var(--memory-bell-ring-duration) cubic-bezier(0.34, 0.02, 0.2, 1) both;
}

.kitchen-memory-bell.is-ringing .kitchen-memory-bell__lid-shadow {
  will-change: transform, opacity;
  animation: kitchen-memory-bell-shadow var(--memory-bell-ring-duration) cubic-bezier(0.34, 0.02, 0.2, 1) both;
}

.kitchen-back {
  position: absolute;
  z-index: 5;
  top: 6.1%;
  left: 3.6%;
  display: block;
  width: 5.22%;
  aspect-ratio: 159 / 169;
  border: 0;
  outline: 0;
  background: transparent;
  -webkit-tap-highlight-color: transparent;
  transition: transform 140ms steps(4, end);
}

.kitchen-back:is(:hover, :focus-visible) {
  outline: 0;
  transform: translateY(-2px);
}

.kitchen-back__art {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter:
    drop-shadow(0.1vw 0.16vw 0 rgb(63 31 28 / 48%))
    drop-shadow(0.16vw 0.46vw 0.28vw rgb(62 32 29 / 34%));
  image-rendering: pixelated;
  user-select: none;
}

.kitchen-refill-supplies {
  position: absolute;
  z-index: 3;
  top: 5%;
  left: 10.4%;
  display: block;
  width: 24.4%;
  height: auto;
  filter:
    drop-shadow(0.1vw 0.16vw 0 rgb(96 48 30 / 24%))
    drop-shadow(0.18vw 0.46vw 0.3vw rgb(73 36 27 / 27%));
  image-rendering: pixelated;
  pointer-events: none;
  user-select: none;
}

.kitchen-memory-counter-anchor {
  position: absolute;
  z-index: 4;
  top: calc(
    var(--kitchen-conveyor-collision-top) -
      var(--kitchen-conveyor-center-shift)
  );
  left: 0;
  width: 100%;
  height: var(--kitchen-conveyor-height);
  overflow: visible;
  pointer-events: none;
  user-select: none;
}

.kitchen-memory-counter {
  position: absolute;
  top: 81.5%;
  left: 50%;
  width: auto;
  height: 22.5%;
  aspect-ratio: 1523 / 305;
  isolation: isolate;
  transform: translateX(-50%);
  pointer-events: none;
  user-select: none;
}

.kitchen-memory-counter__base {
  position: absolute;
  z-index: 1;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter:
    drop-shadow(0.08vw 0.14vw 0 rgb(91 50 35 / 34%))
    drop-shadow(0.04vw 0.36vw 0.28vw rgb(78 39 29 / 30%));
  image-rendering: pixelated;
}

.kitchen-memory-counter__glyph-source {
  display: none;
}

.kitchen-memory-counter__glyphs {
  position: absolute;
  z-index: 2;
  top: 49%;
  left: 50%;
  display: flex;
  height: 60%;
  transform: translate(-50%, -50%);
}

.kitchen-memory-counter__glyphs[hidden] {
  display: none;
}

.kitchen-memory-counter__glyph {
  display: block;
  height: 100%;
  aspect-ratio: 220 / 280;
  flex: 0 0 auto;
  background-image: url("../images/kitchen-memory-counter-glyphs-v1.png");
  background-position: var(--kitchen-memory-counter-glyph-position) center;
  background-repeat: no-repeat;
  background-size: 1100% 100%;
  image-rendering: pixelated;
}

.kitchen-memory-counter__fallback {
  position: absolute;
  z-index: 2;
  top: 49%;
  left: 50%;
  width: 55%;
  color: #5b2f16;
  font-family: "Microsoft YaHei", sans-serif;
  font-size: clamp(8px, 0.78vw, 16px);
  font-weight: 800;
  line-height: 1;
  text-align: center;
  transform: translate(-50%, -50%);
}

.kitchen-memory-counter__fallback[hidden] {
  display: none;
}

.kitchen-memory-menu {
  --kitchen-memory-menu-button-left: 26.25%;
  --kitchen-memory-menu-button-top: 76.61%;
  --kitchen-memory-menu-button-width: 47.44%;
  --kitchen-memory-menu-press-duration: 420ms;
  position: absolute;
  z-index: 4;
  top: var(--kitchen-tablecloth-safe-top);
  left: 50%;
  width: var(--kitchen-memory-menu-width);
  aspect-ratio: 1813 / 868;
  isolation: isolate;
  transform: translateX(-50%);
}

.kitchen-memory-menu__base {
  position: absolute;
  z-index: 1;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter:
    drop-shadow(0.12vw 0.18vw 0 rgb(91 50 35 / 30%))
    drop-shadow(0 0.44vw 0.34vw rgb(72 35 27 / 24%));
  image-rendering: auto;
  pointer-events: none;
  user-select: none;
}

.kitchen-memory-menu__button {
  position: absolute;
  z-index: 2;
  top: var(--kitchen-memory-menu-button-top);
  left: var(--kitchen-memory-menu-button-left);
  display: block;
  width: var(--kitchen-memory-menu-button-width);
  aspect-ratio: 860 / 168;
  padding: 0;
  border: 0;
  outline: 0;
  color: inherit;
  background: transparent;
  cursor: pointer;
  touch-action: manipulation;
  transform: translate3d(0, 0, 0);
  transform-origin: 50% 48%;
  transition: transform 150ms cubic-bezier(0.2, 0.8, 0.25, 1);
  -webkit-tap-highlight-color: transparent;
}

.kitchen-memory-menu__button:disabled {
  cursor: default;
}

.kitchen-memory-menu__button-art {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter:
    drop-shadow(0.08vw 0.12vw 0 rgb(91 49 34 / 38%))
    drop-shadow(0 0.3vw 0.22vw rgb(69 33 25 / 27%));
  image-rendering: auto;
  pointer-events: none;
  user-select: none;
  transform: translate3d(0, 0, 0);
  transform-origin: 50% 50%;
  animation: kitchen-memory-menu-button-idle 5.2s ease-in-out infinite;
  transition: filter 150ms ease-out;
}

.kitchen-memory-menu__button:not(:disabled):is(:hover, :focus-visible) {
  transform: translate3d(0, -2.4%, 0) scale(1.012);
}

.kitchen-memory-menu__button:not(:disabled):is(:hover, :focus-visible)
  .kitchen-memory-menu__button-art {
  filter:
    drop-shadow(0.1vw 0.14vw 0 rgb(91 49 34 / 42%))
    drop-shadow(0 0.38vw 0.28vw rgb(69 33 25 / 31%))
    brightness(1.025);
  animation-play-state: paused;
}

.kitchen-memory-menu__button:focus-visible {
  outline: clamp(2px, 0.14vw, 4px) dashed #8f4f36;
  outline-offset: clamp(1px, 0.12vw, 3px);
  border-radius: 16% / 48%;
}

.kitchen-memory-menu__button:not(:disabled):active {
  transform: translate3d(0, 3.4%, 0) scale(0.982);
}

.kitchen-memory-menu__button:is(:disabled, .is-activating)
  .kitchen-memory-menu__button-art {
  animation-play-state: paused;
}

.kitchen-memory-gallery:not([open]) {
  display: none;
}

.kitchen-memory-gallery {
  position: fixed;
  inset: 0;
  z-index: 200;
  width: 100%;
  max-width: none;
  height: 100%;
  max-height: none;
  margin: 0;
  overflow: hidden;
  border: 0;
  padding: 0;
  color: #5b2f16;
  background: transparent;
}

.kitchen-memory-gallery::backdrop {
  background: rgb(68 35 30 / 24%);
  backdrop-filter: blur(12px) brightness(0.86) saturate(0.94);
}

.kitchen-memory-gallery__panel {
  container-type: inline-size;
  position: absolute;
  top: 50%;
  left: 50%;
  width: min(92vw, 163.5svh);
  aspect-ratio: 1672 / 941;
  isolation: isolate;
  transform: translate(-50%, -50%);
  transform-origin: 50% 52%;
  animation: kitchen-memory-gallery-enter 260ms cubic-bezier(0.22, 0.78, 0.24, 1) both;
}

.kitchen-memory-gallery__shell {
  position: absolute;
  z-index: 1;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter:
    drop-shadow(0.12cqi 0.2cqi 0 rgb(88 45 34 / 24%))
    drop-shadow(0 0.72cqi 0.58cqi rgb(59 29 25 / 34%));
  image-rendering: auto;
  pointer-events: none;
  user-select: none;
}

.kitchen-memory-gallery__header {
  position: absolute;
  z-index: 3;
  inset: 0;
  pointer-events: none;
}

.kitchen-memory-gallery__title {
  position: absolute;
  top: 8.7%;
  left: 9.8%;
  margin: 0;
  color: #5b2f16;
  font-family: "Microsoft YaHei UI", "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", sans-serif;
  font-size: clamp(18px, 2.9cqi, 50px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.08em;
  text-shadow: 0 0.08cqi 0 rgb(255 249 230 / 65%);
  white-space: nowrap;
}

.kitchen-memory-gallery__month-navigation {
  position: absolute;
  top: 7.7%;
  left: 36%;
  display: grid;
  width: 28%;
  height: 9.2%;
  grid-template-columns: 18% minmax(0, 1fr) 18%;
  align-items: center;
  pointer-events: auto;
}

.kitchen-memory-gallery__month-button,
.kitchen-memory-gallery__close,
.kitchen-memory-gallery__empty-action,
.kitchen-memory-gallery__card-button {
  border: 0;
  padding: 0;
  color: inherit;
  background: transparent;
  font: inherit;
  cursor: pointer;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}

.kitchen-memory-gallery__month-button {
  display: grid;
  width: 100%;
  min-width: 44px;
  height: 100%;
  min-height: 44px;
  place-items: center;
  transition:
    filter 140ms ease-out,
    transform 140ms ease-out;
}

.kitchen-memory-gallery__month-button[hidden],
.kitchen-memory-gallery__count[hidden] {
  display: none;
}

.kitchen-memory-gallery__month-button:not(:disabled):is(:hover, :focus-visible) {
  filter: brightness(1.05);
  transform: translateY(-0.12cqi) scale(1.035);
}

.kitchen-memory-gallery__month-button:not(:disabled):active {
  transform: translateY(0.14cqi) scale(0.97);
}

.kitchen-memory-gallery__month-button:disabled {
  opacity: 0.48;
  cursor: default;
  filter: saturate(0.55);
}

.kitchen-memory-gallery__month-arrow {
  display: block;
  width: 58%;
  max-height: 72%;
  object-fit: contain;
  filter: drop-shadow(0 0.14cqi 0.12cqi rgb(82 40 28 / 28%));
  pointer-events: none;
  user-select: none;
}

.kitchen-memory-gallery__month-arrow--next {
  transform: scaleX(-1);
}

.kitchen-memory-gallery__month-copy {
  display: grid;
  grid-column: 2;
  min-width: 0;
  place-items: center;
  align-content: center;
  line-height: 1;
  pointer-events: none;
}

.kitchen-memory-gallery__month {
  color: #5b2f16;
  font-family: "Microsoft YaHei UI", "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", sans-serif;
  font-size: clamp(15px, 2cqi, 34px);
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.025em;
  white-space: nowrap;
}

.kitchen-memory-gallery__count {
  margin-top: 0.36cqi;
  color: #74341f;
  font-family: "Microsoft YaHei UI", "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", sans-serif;
  font-size: clamp(9px, 1.05cqi, 18px);
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  line-height: 1;
  white-space: nowrap;
}

.kitchen-memory-gallery__close {
  position: absolute;
  top: 7.8%;
  right: 6.7%;
  display: grid;
  width: max(4.8%, 44px);
  aspect-ratio: 1;
  place-items: center;
  pointer-events: auto;
  transition:
    filter 140ms ease-out,
    transform 140ms ease-out;
}

.kitchen-memory-gallery__close:is(:hover, :focus-visible) {
  filter: brightness(1.055);
  transform: translateY(-0.12cqi) scale(1.035);
}

.kitchen-memory-gallery__close:active {
  transform: translateY(0.18cqi) scale(0.97);
}

.kitchen-memory-gallery__close-art {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter: drop-shadow(0.08cqi 0.22cqi 0.16cqi rgb(78 35 28 / 34%));
  pointer-events: none;
  user-select: none;
}

.kitchen-memory-gallery__month-button:focus-visible,
.kitchen-memory-gallery__close:focus-visible,
.kitchen-memory-gallery__empty-action:focus-visible,
.kitchen-memory-gallery__card-button:focus-visible,
.kitchen-memory-gallery__viewport:focus-visible {
  outline: max(2px, 0.16cqi) solid #fff8e8;
  outline-offset: max(2px, 0.18cqi);
}

.kitchen-memory-gallery__viewport {
  position: absolute;
  z-index: 2;
  top: 20.5%;
  left: 7.7%;
  width: 82.3%;
  height: 66.5%;
  overflow: auto;
  overscroll-behavior: contain;
  border-radius: 0.8cqi;
  scrollbar-color: #bd752a #f6dfbc;
  scrollbar-width: thin;
}

.kitchen-memory-gallery__viewport::-webkit-scrollbar {
  width: clamp(8px, 0.72cqi, 14px);
}

.kitchen-memory-gallery__viewport::-webkit-scrollbar-track {
  border-radius: 999px;
  background: #f6dfbc;
}

.kitchen-memory-gallery__viewport::-webkit-scrollbar-thumb {
  border: max(1px, 0.08cqi) solid #8d4e22;
  border-radius: 999px;
  background: #dfa140;
}

.kitchen-memory-gallery__list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: 1.85cqi;
  row-gap: 2.65cqi;
  margin: 0;
  padding: 0.55cqi 0.8cqi 1.2cqi;
  list-style: none;
}

.kitchen-memory-gallery__list:empty {
  display: none;
}

.kitchen-memory-gallery__card {
  min-width: 0;
  aspect-ratio: 330 / 294;
}

.kitchen-memory-gallery__card-button {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  overflow: visible;
  border-radius: 1.4cqi;
}

.kitchen-memory-gallery__card-button::after {
  content: "";
  position: absolute;
  z-index: 2;
  inset: 0;
  background: url("../images/kitchen-memory-gallery-card-v1.png") center / contain no-repeat;
  filter: drop-shadow(0.1cqi 0.28cqi 0.18cqi rgb(90 47 31 / 26%));
  pointer-events: none;
}

.kitchen-memory-gallery__card-photo {
  position: absolute;
  z-index: 1;
  top: 12%;
  left: 7.6%;
  display: block;
  width: 84%;
  height: 68.2%;
  object-fit: contain;
  background: #fff9ec;
  image-rendering: auto;
  transition: transform 170ms ease-out;
}

.kitchen-memory-gallery__card-date {
  position: absolute;
  z-index: 3;
  right: 7%;
  bottom: 5.2%;
  left: 7%;
  overflow: hidden;
  color: #74341f;
  font-family: "Microsoft YaHei UI", "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", sans-serif;
  font-size: clamp(10px, 1.28cqi, 22px);
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  line-height: 1;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
  pointer-events: none;
}

.kitchen-memory-gallery__card-button:is(:hover, :focus-visible)
  .kitchen-memory-gallery__card-photo {
  transform: scale(1.015);
}

.kitchen-memory-gallery__card-button:active .kitchen-memory-gallery__card-photo {
  transform: scale(0.99);
}

.kitchen-memory-gallery__state {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 1.05cqi;
  text-align: center;
}

.kitchen-memory-gallery[data-state="ready"] .kitchen-memory-gallery__state {
  display: none;
}

.kitchen-memory-gallery__status {
  margin: 0;
  color: #6b3420;
  font-family: "Microsoft YaHei UI", "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", sans-serif;
  font-size: clamp(16px, 1.7cqi, 30px);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0.04em;
}

.kitchen-memory-gallery__empty-action {
  color: #8c4930;
  font-family: "Microsoft YaHei UI", "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", sans-serif;
  font-size: clamp(12px, 1.08cqi, 19px);
  font-weight: 700;
  line-height: 1.4;
  text-decoration: underline;
  text-decoration-thickness: max(1px, 0.07cqi);
  text-underline-offset: 0.2em;
  transition:
    color 140ms ease-out,
    transform 140ms ease-out;
}

.kitchen-memory-gallery__empty-action:is(:hover, :focus-visible) {
  color: #6b301f;
  transform: translateY(-0.08cqi);
}

@keyframes kitchen-memory-gallery-enter {
  from {
    opacity: 0;
    transform: translate(-50%, -49%) scale(0.982);
  }

  to {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
  }
}

.kitchen-memory-plate[hidden] {
  display: none;
}

.kitchen-memory-plate {
  --kitchen-memory-plate-stage-size: min(54vw, 90svh);
  position: fixed;
  inset: 0;
  z-index: 100;
  display: grid;
  place-items: end center;
  overflow: hidden;
  opacity: 0;
  transition: opacity 220ms ease-out;
}

.kitchen-memory-plate[data-presented="true"] {
  opacity: 1;
}

.kitchen-memory-plate__scrim {
  position: absolute;
  inset: -28px;
  border: 0;
  padding: 0;
  background: rgba(255, 239, 228, 0.035);
  backdrop-filter: blur(12px) brightness(1.015);
  cursor: default;
}

.kitchen-memory-plate__cloche-control:focus-visible,
.kitchen-memory-plate__upload:focus-visible {
  outline: 4px solid #fff8e8;
  outline-offset: 4px;
}

.kitchen-memory-plate__stage {
  --plate-center-x: 51.440112%;
  --plate-center-y: 39.594498%;
  --cloche-closed-left: 12.900568%;
  --cloche-closed-top: 1.854427%;
  --cloche-closed-scale: 77%;
  --cloche-open-final-left: 76.433831%;
  --cloche-open-final-top: -19.231327%;
  --cloche-open-final-scale: 69.3%;
  position: relative;
  z-index: 3;
  width: var(--kitchen-memory-plate-stage-size);
  aspect-ratio: 1;
  transform: translateY(12vh) scale(0.92);
  transform-origin: center bottom;
  transition: transform 520ms cubic-bezier(0.22, 0.74, 0.2, 1);
}

.kitchen-memory-plate[data-presented="true"] .kitchen-memory-plate__stage {
  transform: translateY(0) scale(1);
}

.kitchen-memory-plate__hands {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  image-rendering: pixelated;
  pointer-events: none;
  user-select: none;
}

.kitchen-memory-plate__hands {
  z-index: 1;
}

.kitchen-memory-plate__content {
  position: absolute;
  top: var(--plate-center-y);
  left: var(--plate-center-x);
  z-index: 2;
  display: grid;
  width: 35%;
  aspect-ratio: 1;
  place-items: center;
  overflow: hidden;
  border-radius: 12%;
  opacity: 0;
  transform: translate(-50%, -50%) scale(0.92);
  transition:
    opacity 180ms ease-out,
    transform 220ms ease-out;
}

.kitchen-memory-plate[data-state="open"] .kitchen-memory-plate__content {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}

.kitchen-memory-plate__media {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  image-rendering: auto;
}

.kitchen-memory-plate__upload {
  position: relative;
  z-index: 1;
  display: grid;
  width: 20%;
  aspect-ratio: 1;
  place-items: center;
  border: 0;
  border-radius: 50%;
  padding: 0;
  background: transparent;
  cursor: pointer;
  transition: transform 140ms ease-out;
}

.kitchen-memory-plate__upload:is(:hover, :focus-visible) {
  transform: scale(1.035);
}

.kitchen-memory-plate__upload:active {
  transform: scale(0.965);
}

.kitchen-memory-plate__upload-art {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  image-rendering: pixelated;
  pointer-events: none;
  user-select: none;
}

.kitchen-memory-plate[data-upload-state="uploading"] .kitchen-memory-plate__upload {
  cursor: wait;
  opacity: 0.68;
}

.kitchen-memory-plate[data-upload-state="ready"] .kitchen-memory-plate__upload {
  opacity: 0;
}

.kitchen-memory-plate__file {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

.kitchen-memory-editor[hidden] {
  display: none;
}

.kitchen-memory-editor {
  position: absolute;
  z-index: 6;
  top: 2.7svh;
  left: 3.7vw;
  width: auto;
  height: 95.8svh;
  aspect-ratio: 538 / 848;
  container-type: inline-size;
  isolation: isolate;
}

.kitchen-memory-editor__shell {
  position: absolute;
  z-index: 0;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: fill;
  image-rendering: auto;
  pointer-events: none;
  user-select: none;
}

.kitchen-memory-editor__title-art {
  position: absolute;
  z-index: 2;
  top: 1.6509%;
  left: 21.0037%;
  display: block;
  width: 51.3011%;
  height: 7.783%;
  object-fit: contain;
  image-rendering: auto;
  pointer-events: none;
  user-select: none;
}

.kitchen-memory-editor__viewport {
  position: absolute;
  z-index: 1;
  top: 11.7925%;
  left: 11.3383%;
  width: 77.3234%;
  height: 49.0566%;
  overflow: hidden;
  touch-action: none;
}

.kitchen-memory-editor__stage-upload {
  position: absolute;
  inset: 0;
  z-index: 3;
  display: grid;
  border: 0;
  padding: 0;
  place-items: center;
  background: transparent;
  color: #7b3c27;
  cursor: pointer;
  touch-action: manipulation;
}

.kitchen-memory-editor__stage-upload[hidden] {
  display: none;
}

.kitchen-memory-editor__stage-upload-content {
  display: grid;
  place-items: center;
  gap: 1.15cqi;
  opacity: 0.42;
  transform: translateY(0.35cqi) scale(1);
  transform-origin: center;
  transition:
    opacity 140ms ease-out,
    transform 160ms cubic-bezier(0.2, 0.72, 0.22, 1.18);
}

.kitchen-memory-editor__stage-upload-icon {
  display: block;
  width: 11.9cqi;
  height: 11.9cqi;
  object-fit: contain;
  image-rendering: auto;
  filter: saturate(0.82);
  pointer-events: none;
  user-select: none;
}

.kitchen-memory-editor__stage-upload-label {
  font-family: "Microsoft YaHei", "PingFang SC", sans-serif;
  font-size: 3.05cqi;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.035em;
  white-space: nowrap;
}

.kitchen-memory-editor__stage-upload:not(:disabled):is(:hover, :focus-visible)
  .kitchen-memory-editor__stage-upload-content {
  opacity: 0.82;
  transform: translateY(0) scale(1.025);
}

.kitchen-memory-editor__stage-upload:not(:disabled):active
  .kitchen-memory-editor__stage-upload-content {
  transform: translateY(0.18cqi) scale(0.99);
}

.kitchen-memory-editor__stage-upload:focus-visible {
  outline: none;
}

.kitchen-memory-editor__stage-upload:focus-visible
  .kitchen-memory-editor__stage-upload-icon {
  border-radius: 50%;
  outline: max(2px, 0.38cqi) dashed #91452e;
  outline-offset: max(2px, 0.55cqi);
}

.kitchen-memory-editor__stage-upload:disabled {
  cursor: progress;
}

.kitchen-memory-editor__stage-upload:disabled
  .kitchen-memory-editor__stage-upload-content {
  opacity: 0.58;
}

.kitchen-memory-editor__photo {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  pointer-events: none;
  user-select: none;
}

.kitchen-memory-editor__photo[hidden],
.kitchen-memory-editor__crop-boundary[hidden] {
  display: none;
}

.kitchen-memory-editor__crop-boundary {
  position: absolute;
  overflow: hidden;
  pointer-events: none;
}

.kitchen-memory-editor__crop-box {
  position: absolute;
  box-sizing: border-box;
  border: max(2px, 0.35cqi) solid #ff7b73;
  box-shadow: 0 0 0 200vmax rgb(59 38 31 / 42%);
  cursor: grab;
  pointer-events: auto;
  touch-action: none;
}

.kitchen-memory-editor__crop-box:active {
  cursor: grabbing;
}

.kitchen-memory-editor__crop-box:focus-visible {
  outline: max(2px, 0.42cqi) solid #fff8e8;
  outline-offset: max(1px, 0.25cqi);
}

.kitchen-memory-editor__grid-line {
  position: absolute;
  display: block;
  opacity: 0.9;
  pointer-events: none;
}

.kitchen-memory-editor__grid-line--v1,
.kitchen-memory-editor__grid-line--v2 {
  top: 0;
  bottom: 0;
  border-left: max(1px, 0.18cqi) dashed rgb(255 250 236 / 92%);
}

.kitchen-memory-editor__grid-line--v1 {
  left: 33.3333%;
}

.kitchen-memory-editor__grid-line--v2 {
  left: 66.6667%;
}

.kitchen-memory-editor__grid-line--h1,
.kitchen-memory-editor__grid-line--h2 {
  right: 0;
  left: 0;
  border-top: max(1px, 0.18cqi) dashed rgb(255 250 236 / 92%);
}

.kitchen-memory-editor__grid-line--h1 {
  top: 33.3333%;
}

.kitchen-memory-editor__grid-line--h2 {
  top: 66.6667%;
}

.kitchen-memory-editor__helper {
  position: absolute;
  z-index: 2;
  top: 63.65%;
  left: 9.1%;
  width: 53%;
  margin: 0;
  overflow: hidden;
  color: #74341f;
  font-family: "Microsoft YaHei", "PingFang SC", sans-serif;
  font-size: 3.45cqi;
  font-weight: 650;
  line-height: 1.15;
  text-overflow: ellipsis;
  white-space: nowrap;
  pointer-events: none;
}

.kitchen-memory-editor__section-label {
  position: absolute;
  z-index: 2;
  top: 70.64%;
  left: 9.85%;
  margin: 0;
  color: #74341f;
  font-family: "Microsoft YaHei", "PingFang SC", sans-serif;
  font-size: 4.05cqi;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.08em;
  pointer-events: none;
}

.kitchen-memory-editor__art-button {
  position: absolute;
  z-index: 3;
  display: block;
  border: 0;
  padding: 0;
  background: transparent;
  cursor: pointer;
  transform: translateZ(0) scale(1);
  transform-origin: center;
  transition:
    transform 150ms cubic-bezier(0.2, 0.72, 0.22, 1.18),
    filter 130ms ease-out;
  will-change: transform;
}

.kitchen-memory-editor__art-button > img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  image-rendering: auto;
  pointer-events: none;
  user-select: none;
}

.kitchen-memory-editor__art-button:not(.kitchen-memory-editor__ratio) {
  color: #68301d;
  font-family: "Microsoft YaHei", "PingFang SC", sans-serif;
  font-weight: 700;
  line-height: 1;
  filter: none;
}

.kitchen-memory-editor__art-button:not(.kitchen-memory-editor__ratio):not(:disabled):is(:hover, :focus-visible) {
  z-index: 5;
}

.kitchen-memory-editor__action-visual,
.kitchen-memory-editor__action-skin {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  pointer-events: none;
  user-select: none;
}

.kitchen-memory-editor__action-visual {
  z-index: 0;
  transform: translateZ(0) scale(1);
  transform-origin: center;
  transition:
    transform 150ms cubic-bezier(0.2, 0.72, 0.22, 1.18),
    filter 130ms ease-out;
  will-change: transform;
}

.kitchen-memory-editor__action-skin {
  object-fit: contain;
  image-rendering: auto;
  transition: opacity 110ms ease-out;
}

.kitchen-memory-editor__action-skin--accent {
  opacity: 0;
}

.kitchen-memory-editor__action-label {
  position: absolute;
  z-index: 1;
  inset: 0;
  display: grid;
  place-items: center;
  color: inherit;
  white-space: nowrap;
  pointer-events: none;
  transition: color 110ms ease-out;
}

.kitchen-memory-editor__action-label--close {
  font-family: "Segoe UI Symbol", "Microsoft YaHei", sans-serif;
  font-size: 7.7cqi;
  font-weight: 600;
  transform: translateY(-0.58cqi);
}

.kitchen-memory-editor__action-label--replace {
  font-size: 4.4cqi;
  letter-spacing: -0.04em;
  transform: translateY(-0.12cqi);
}

.kitchen-memory-editor__action-label--bottom {
  font-size: 5.6cqi;
  letter-spacing: 0.015em;
}

.kitchen-memory-editor__action-label--cancel {
  transform: translateY(-0.08cqi);
}

.kitchen-memory-editor__action-label--confirm {
  transform: translate3d(-0.28cqi, -0.1cqi, 0);
}

.kitchen-memory-editor__art-button:not(.kitchen-memory-editor__ratio):not(:disabled):is(:hover, :focus-visible) {
  color: #fff8e8;
}

.kitchen-memory-editor__art-button:not(.kitchen-memory-editor__ratio):not(:disabled):is(:hover, :focus-visible)
  .kitchen-memory-editor__action-skin--neutral {
  opacity: 0;
}

.kitchen-memory-editor__art-button:not(.kitchen-memory-editor__ratio):not(:disabled):is(:hover, :focus-visible)
  .kitchen-memory-editor__action-skin--accent {
  opacity: 1;
}

.kitchen-memory-editor__art-button:not(.kitchen-memory-editor__ratio):not(:disabled):is(:hover, :focus-visible)
  .kitchen-memory-editor__action-visual {
  filter: brightness(1.015);
  transform: translateZ(0) scale(1.015);
}

.kitchen-memory-editor__art-button--cancel:not(:disabled):is(:hover, :focus-visible)
  .kitchen-memory-editor__action-visual,
.kitchen-memory-editor__art-button--confirm:not(:disabled):is(:hover, :focus-visible)
  .kitchen-memory-editor__action-visual {
  transform: translateZ(0) scale(1.012);
}

.kitchen-memory-editor__art-button:not(.kitchen-memory-editor__ratio):not(:disabled):active
  .kitchen-memory-editor__action-visual {
  transform: translateY(1px) scale(0.992);
}

.kitchen-memory-editor__art-button:focus-visible {
  outline: max(2px, 0.42cqi) dashed #87422a;
  outline-offset: max(1px, 0.22cqi);
}

.kitchen-memory-editor__art-button:disabled {
  cursor: default;
}

.kitchen-memory-editor__art-button:not(.kitchen-memory-editor__ratio):disabled
  .kitchen-memory-editor__action-visual,
.kitchen-memory-editor__art-button:not(.kitchen-memory-editor__ratio):disabled
  .kitchen-memory-editor__action-label {
  opacity: 0.72;
}

.kitchen-memory-editor__art-button--close {
  top: 1.1792%;
  left: 82.1561%;
  width: 14.1264%;
  height: 8.9623%;
}

.kitchen-memory-editor__art-button--replace {
  top: 62.0283%;
  left: 65.4275%;
  width: 29.368%;
  height: 8.0189%;
}

.kitchen-memory-editor__ratios {
  display: contents;
}

.kitchen-memory-editor__ratio {
  --ratio-label-x: 0cqi;
  --ratio-label-y: 0.32cqi;
  top: 75.1179%;
  width: 18.9591%;
  height: 6.6038%;
  color: #68301d;
  font-family: "Microsoft YaHei", "PingFang SC", sans-serif;
  font-size: 3.65cqi;
  font-weight: 700;
  line-height: 1;
  filter: none;
}

.kitchen-memory-editor__ratio--original {
  --ratio-label-x: 0.0465cqi;
  --ratio-label-y: 0.2cqi;
  left: 9.1078%;
}

.kitchen-memory-editor__ratio--square {
  --ratio-label-x: 0.1859cqi;
  left: 30.1115%;
}

.kitchen-memory-editor__ratio--landscape {
  --ratio-label-x: 0.0929cqi;
  --ratio-label-y: 0.3cqi;
  left: 50.5576%;
}

.kitchen-memory-editor__ratio--portrait {
  --ratio-label-x: -0.1394cqi;
  --ratio-label-y: 0.3cqi;
  left: 71.1896%;
}

.kitchen-memory-editor__ratio-visual,
.kitchen-memory-editor__ratio-skin {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  pointer-events: none;
  user-select: none;
}

.kitchen-memory-editor__ratio-visual {
  z-index: 0;
  transform: translateZ(0) scale(1);
  transform-origin: center;
  transition:
    transform 150ms cubic-bezier(0.2, 0.72, 0.22, 1.18),
    filter 130ms ease-out;
  will-change: transform;
}

.kitchen-memory-editor__ratio-skin {
  object-fit: contain;
  image-rendering: auto;
  transition: opacity 110ms ease-out;
}

.kitchen-memory-editor__ratio-skin--accent {
  opacity: 0;
}

.kitchen-memory-editor__ratio-label {
  position: absolute;
  z-index: 1;
  top: 16.0714%;
  left: 10.7843%;
  display: grid;
  width: 78.4314%;
  height: 60.7143%;
  place-items: center;
  color: inherit;
  white-space: nowrap;
  pointer-events: none;
  transform: translate3d(var(--ratio-label-x), var(--ratio-label-y), 0);
  transition: color 110ms ease-out;
}

.kitchen-memory-editor__ratio[aria-checked="true"] {
  color: #fff8e8;
}

.kitchen-memory-editor__ratio[aria-checked="true"]
  .kitchen-memory-editor__ratio-skin--neutral {
  opacity: 0;
}

.kitchen-memory-editor__ratio[aria-checked="true"]
  .kitchen-memory-editor__ratio-skin--accent {
  opacity: 1;
}

.kitchen-memory-editor__ratio:not(:disabled):is(:hover, :focus-visible) {
  z-index: 5;
}

.kitchen-memory-editor__ratio:not(:disabled):is(:hover, :focus-visible)
  .kitchen-memory-editor__ratio-visual {
  filter: brightness(1.025);
  transform: translateZ(0) scale(1.015);
}

.kitchen-memory-editor__ratio:not(:disabled):active
  .kitchen-memory-editor__ratio-visual {
  transform: translateY(1px) scale(0.995);
}

.kitchen-memory-editor__art-button--cancel {
  top: 85.0236%;
  left: 5.3903%;
  width: 34.2007%;
  height: 11.9104%;
}

.kitchen-memory-editor__art-button--confirm {
  top: 85.0236%;
  left: 40.1487%;
  width: 55.7621%;
  height: 11.9104%;
}

.kitchen-memory-editor[data-draft-state="uploading"]
  .kitchen-memory-editor__art-button {
  cursor: wait;
}

.kitchen-memory-plate[data-editor-open="true"] .kitchen-memory-plate__upload {
  opacity: 0;
  pointer-events: none;
}

@media (max-width: 900px), (max-aspect-ratio: 5 / 4) {
  .kitchen-memory-editor {
    top: 50%;
    left: 50%;
    width: min(94vw, 60.8svh);
    height: auto;
    transform: translate(-50%, -50%);
  }

  .kitchen-memory-plate[data-editor-open="true"] .kitchen-memory-plate__stage {
    opacity: 0.16;
    pointer-events: none;
  }
}

.kitchen-memory-plate__cloche-actor {
  position: absolute;
  inset: 0;
  z-index: 4;
  pointer-events: none;
}

.kitchen-memory-plate__cloche-control {
  position: absolute;
  top: 14.113822%;
  left: 25.959436%;
  z-index: 5;
  width: 50.961351%;
  aspect-ratio: 1;
  border: 0;
  border-radius: 50%;
  padding: 0;
  background: transparent;
  clip-path: circle(50%);
  cursor: pointer;
}

.kitchen-memory-plate__cloche-closed,
.kitchen-memory-plate__cloche-open {
  position: absolute;
  display: block;
  height: auto;
  aspect-ratio: 1;
  object-fit: contain;
  image-rendering: pixelated;
  pointer-events: none;
  user-select: none;
  will-change: opacity;
}

.kitchen-memory-plate__cloche-closed {
  top: var(--cloche-closed-top);
  left: var(--cloche-closed-left);
  width: var(--cloche-closed-scale);
  transform-origin: 50.014354% 47.359649%;
  opacity: 1;
  visibility: visible;
}

.kitchen-memory-plate__cloche-open {
  top: var(--cloche-open-final-top);
  left: var(--cloche-open-final-left);
  width: var(--cloche-open-final-scale);
  transform-origin: 72.118022% 25.328549%;
  opacity: 0;
  visibility: hidden;
}

.kitchen-memory-plate[data-state="opening"] .kitchen-memory-plate__cloche-control,
.kitchen-memory-plate[data-state="open"] .kitchen-memory-plate__cloche-control {
  pointer-events: none;
}

.kitchen-memory-plate[data-state="closed"]
  .kitchen-memory-plate__stage:has(
    .kitchen-memory-plate__cloche-control:is(:hover, :focus-visible)
  )
  .kitchen-memory-plate__cloche-closed {
  animation: kitchen-memory-plate-cloche-tease 540ms ease-in-out infinite;
}

.kitchen-memory-plate[data-state="opening"] .kitchen-memory-plate__cloche-closed {
  animation: kitchen-memory-plate-cloche-closed-fade 360ms ease-out both;
}

.kitchen-memory-plate[data-state="opening"] .kitchen-memory-plate__cloche-open {
  animation: kitchen-memory-plate-cloche-open-fade 560ms ease-out 160ms both;
}

.kitchen-memory-plate[data-state="open"] .kitchen-memory-plate__cloche-closed {
  opacity: 0;
  visibility: hidden;
}

.kitchen-memory-plate[data-state="open"] .kitchen-memory-plate__cloche-open {
  opacity: 1;
  visibility: visible;
}

@keyframes kitchen-memory-plate-cloche-tease {
  0%,
  100% {
    transform: translate(0, 0) rotate(0);
  }

  24% {
    transform: translate(-0.35%, -0.55%) rotate(-1deg);
  }

  52% {
    transform: translate(0.45%, -0.2%) rotate(1.1deg);
  }

  76% {
    transform: translate(-0.15%, -0.45%) rotate(-0.55deg);
  }
}

@keyframes kitchen-memory-plate-cloche-closed-fade {
  0% {
    opacity: 1;
    visibility: visible;
  }

  99.99% {
    opacity: 0;
    visibility: visible;
  }

  100% {
    opacity: 0;
    visibility: hidden;
  }
}

@keyframes kitchen-memory-plate-cloche-open-fade {
  0% {
    opacity: 0;
    visibility: visible;
  }

  100% {
    opacity: 1;
    visibility: visible;
  }
}

.kitchen-memory-menu__button--all.is-activating {
  will-change: transform;
  animation:
    kitchen-memory-menu-press-all
    var(--kitchen-memory-menu-press-duration)
    cubic-bezier(0.24, 0.78, 0.24, 1)
    both;
}

@keyframes kitchen-memory-menu-button-idle {
  0%,
  72%,
  100% {
    transform: translate3d(0, 0, 0);
  }

  82% {
    transform: translate3d(0, -0.18vmin, 0);
  }

  91% {
    transform: translate3d(0, 0.06vmin, 0);
  }
}

@keyframes kitchen-memory-menu-press-all {
  0%,
  100% {
    transform: translate3d(0, 0, 0) scale(1);
  }

  26% {
    transform: translate3d(0, 3.8%, 0) scale(0.978);
  }

  56% {
    transform: translate3d(0, -2.4%, 0) scale(1.014);
  }

  78% {
    transform: translate3d(0, 0.8%, 0) scale(0.995);
  }
}

@keyframes kitchen-memory-bell-ring {
  0%,
  100% {
    transform: translate3d(0, 0, 0) rotate(0deg);
  }

  13% {
    transform: translate3d(-1.8%, -1.5%, 0) rotate(-3.8deg);
  }

  26% {
    transform: translate3d(1.7%, 0.4%, 0) rotate(3.6deg);
  }

  39% {
    transform: translate3d(-1.45%, -1.9%, 0) rotate(-3deg);
  }

  52% {
    transform: translate3d(1.2%, 0.15%, 0) rotate(2.6deg);
  }

  65% {
    transform: translate3d(-0.8%, -1%, 0) rotate(-1.9deg);
  }

  78% {
    transform: translate3d(0.6%, 0, 0) rotate(1.25deg);
  }

  90% {
    transform: translate3d(-0.25%, -0.35%, 0) rotate(-0.55deg);
  }
}

@keyframes kitchen-memory-bell-shadow {
  0%,
  100% {
    opacity: 0.82;
    transform: translate(-50%, -50%) scaleX(1);
  }

  13%,
  39% {
    opacity: 0.58;
    transform: translate(-48%, -45%) scaleX(0.91);
  }

  26%,
  52% {
    opacity: 0.72;
    transform: translate(-52%, -48%) scaleX(0.96);
  }

  65%,
  90% {
    opacity: 0.74;
    transform: translate(-50%, -48%) scaleX(0.98);
  }
}

@media (prefers-reduced-motion: reduce) {
  .kitchen-conveyor__trays {
    will-change: auto;
  }

  .kitchen-memory-menu__button--all.is-activating,
  .kitchen-memory-menu__button-art,
  .kitchen-memory-gallery__panel,
  .kitchen-memory-bell.is-ringing .kitchen-memory-bell__trigger,
  .kitchen-memory-bell.is-ringing .kitchen-memory-bell__lid-shadow,
  .kitchen-memory-plate__cloche-actor,
  .kitchen-memory-plate__cloche-closed,
  .kitchen-memory-plate__cloche-open {
    animation: none;
    will-change: auto;
  }

  .kitchen-memory-plate,
  .kitchen-memory-plate__stage,
  .kitchen-memory-plate__content,
  .kitchen-memory-gallery__month-button,
  .kitchen-memory-gallery__close,
  .kitchen-memory-gallery__empty-action,
  .kitchen-memory-gallery__card-photo,
  .kitchen-memory-editor__art-button {
    transition-duration: 0.01ms;
  }

  .kitchen-memory-editor__action-visual,
  .kitchen-memory-editor__ratio-visual,
  .kitchen-memory-editor__stage-upload,
  .kitchen-memory-editor__stage-upload-content {
    transition-duration: 0.01ms;
  }

  .kitchen-memory-editor__stage-upload:not(:disabled):is(:hover, :focus-visible)
    .kitchen-memory-editor__stage-upload-content,
  .kitchen-memory-editor__stage-upload:not(:disabled):active
    .kitchen-memory-editor__stage-upload-content {
    transform: none;
  }

  .kitchen-memory-editor__art-button:not(.kitchen-memory-editor__ratio):not(:disabled):is(:hover, :focus-visible)
    .kitchen-memory-editor__action-visual,

  .kitchen-memory-editor__ratio:not(:disabled):is(:hover, :focus-visible)
    .kitchen-memory-editor__ratio-visual {
    transform: none;
  }

  .kitchen-memory-plate__scrim {
    backdrop-filter: blur(12px);
  }
}
