.ready-mm { display: block; line-height: 1; }
.ready-mm[data-mobile="false"] { display: none; }
.ready-mm[data-mobile="true"] { display: block; }
.ready-mm [hidden] { display: none !important; }
.ready-mm .ready-mm__toggle,
.ready-mm__dialog .ready-mm__close {
    display: inline-flex; align-items: center; justify-content: center;
    width: 44px; height: 44px; min-width: 44px; margin: 0; padding: 0;
    border: 0; border-radius: 0; background: transparent; box-shadow: none;
    cursor: pointer; line-height: 1; -webkit-tap-highlight-color: transparent;
}
.ready-mm .ready-mm__toggle { color: var(--ready-mm-toggle, #fff); }
.ready-mm__dialog .ready-mm__close { color: #111; }
.ready-mm .ready-mm__toggle:hover,
.ready-mm .ready-mm__toggle:focus { background: transparent; color: var(--ready-mm-toggle, #fff); }
.ready-mm__dialog .ready-mm__close:hover,
.ready-mm__dialog .ready-mm__close:focus,
.ready-mm__dialog .ready-mm__close:active { background: transparent; color: #111; }
.ready-mm :focus-visible, .ready-mm__dialog :focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
.ready-mm__dialog {
    position: fixed; inset: 0; width: 100%; max-width: none; height: 100%; height: 100dvh;
    max-height: none; margin: 0; padding: 0; border: 0; background: transparent;
    overflow: hidden; color: #111; font-family: Arial, Helvetica, sans-serif;
    text-align: left; line-height: 1.45;
}
.ready-mm__dialog:not([open]) { display: none !important; }
.ready-mm__dialog::backdrop { background: rgb(0 0 0 / 48%); }
.ready-mm__dialog *, .ready-mm__dialog *::before, .ready-mm__dialog *::after { box-sizing: border-box; }
.ready-mm__panel {
    width: min(400px, calc(100% - 16px)); height: 100%; margin: 0;
    padding: env(safe-area-inset-top, 0px) 0 env(safe-area-inset-bottom, 0px);
    background: #fff; overflow-y: auto; overscroll-behavior: contain;
    scrollbar-width: thin; box-shadow: 8px 0 40px rgb(0 0 0 / 10%);
}
.ready-mm__dialog[open] .ready-mm__panel { animation: ready-mm-in 220ms ease-out; }
.ready-mm__top { position: sticky; top: 0; z-index: 2; padding: 4px 4px 0; background: #fff; }
.ready-mm__nav { padding: 0 18px; }
.ready-mm__dialog .ready-mm__links,
.ready-mm__dialog .ready-mm__links ul,
.ready-mm__dialog .ready-mm__products { list-style: none; margin: 0; padding: 0; }
.ready-mm__dialog .ready-mm__links li { margin: 0; padding: 0; }
.ready-mm__dialog .ready-mm__links a {
    display: flex; align-items: center; min-height: 46px; padding: 8px 0;
    color: #111; background: transparent; font-size: 22px; font-weight: 800;
    text-decoration: none; text-transform: uppercase; line-height: 1.25;
    letter-spacing: -.45px; overflow-wrap: anywhere;
}
.ready-mm__dialog .ready-mm__links a:hover { color: #555; }
.ready-mm__dialog .ready-mm__links .sub-menu { padding-left: 16px; border-left: 1px solid #e5e5e5; margin: 0 0 8px; }
.ready-mm__dialog .ready-mm__links .sub-menu a { font-size: 16px; font-weight: 600; letter-spacing: 0; min-height: 44px; }
.ready-mm__recommendations { margin: 32px 18px 24px; padding: 22px 0 0; border-top: 1px solid #e8e8e8; }
.ready-mm__dialog .ready-mm__heading { margin: 0 0 16px; color: #666; font: 700 11px/1.4 Arial, Helvetica, sans-serif; letter-spacing: 1.5px; text-transform: uppercase; }
.ready-mm__dialog .ready-mm__products { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 12px; }
.ready-mm__dialog .ready-mm__products li { min-width: 0; margin: 0; padding: 0; }
.ready-mm__dialog .ready-mm__product { display: flex; flex-direction: column; gap: 6px; color: #111; text-decoration: none; }
.ready-mm__image { display: block; aspect-ratio: 1; width: 100%; overflow: hidden; background: #f5f5f5; }
.ready-mm__dialog .ready-mm__image img { display: block; width: 100%; height: 100%; object-fit: contain; border-radius: 0; margin: 0; }
.ready-mm__name { margin-top: 4px; font-size: 12px; font-weight: 700; line-height: 1.45; overflow-wrap: anywhere; }
.ready-mm__price { font-size: 12px; line-height: 1.5; font-weight: 400; }
.ready-mm__price del { color: #777; margin-right: 4px; }
.ready-mm__price ins { background: none; color: #111; text-decoration: none; }
.ready-mm__sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
@keyframes ready-mm-in { from { transform: translateX(-100%); } to { transform: translateX(0); } }
@media (prefers-reduced-motion: reduce) { .ready-mm__dialog[open] .ready-mm__panel { animation: none; } }
