.ld-menu-book {
    --ld-toolbar-gap: 14px;
    --ld-radius: 18px;
    --ld-shadow-opacity: 18;
    --ld-inner-line-opacity: 42;
    --ld-inner-line-color: #ffffff;
    --ld-spine-color: #d6c3aa;
    --ld-counter-bg: rgba(255, 255, 255, 0.9);
    --ld-button-text: #ffffff;
    --ld-button-opacity: 0.65;
    --ld-image-fit: cover;
    --ld-image-position: center center;
    --ld-image-scale-desktop: 100;
    --ld-image-scale-tablet: 100;
    --ld-image-scale-mobile: 100;
    --ld-image-height-desktop: 100%;
    --ld-image-height-tablet: 100%;
    --ld-image-height-mobile: 100%;
    --ld-image-scale-current: var(--ld-image-scale-desktop);
    --ld-image-height-current: var(--ld-image-height-desktop);
}
.ld-menu-book--preset-elegant_light { --ld-inner-line-color: #f3ece2; --ld-spine-color: #d8c7ad; --ld-counter-bg: rgba(255, 250, 244, 0.92); }
.ld-menu-book--preset-elegant_gold { --ld-inner-line-color: #f2e4bf; --ld-spine-color: #c9ab62; --ld-counter-bg: rgba(255, 248, 232, 0.94); }
.ld-menu-book--preset-soft_dark { --ld-inner-line-color: #d8dbe3; --ld-spine-color: #7f8aa3; --ld-counter-bg: rgba(27, 33, 44, 0.8); }
.ld-menu-book--preset-soft_dark .ld-menu-book__counter, .ld-menu-book--preset-soft_dark .ld-menu-book__content { color: #ffffff; }
.ld-menu-book__stage-wrap { position: relative; display: flex; flex-direction: column; }
.ld-menu-book__toolbar { display: flex; align-items: center; justify-content: center; gap: var(--ld-toolbar-gap); z-index: 6; }
.ld-menu-book--nav-top .ld-menu-book__toolbar { order: 1; margin-bottom: 18px; }
.ld-menu-book--nav-bottom .ld-menu-book__toolbar { order: 3; margin-top: 18px; }
.ld-menu-book--nav-sides .ld-menu-book__toolbar { position: absolute; inset: 0; margin: 0; display: grid; grid-template-columns: 60px 1fr 60px; grid-template-rows: 1fr auto; pointer-events: none; align-items: center; }
.ld-menu-book__button { appearance: none; border: 0; width: 46px; height: 46px; border-radius: 999px; color: var(--ld-button-text); font-size: 18px; line-height: 1; cursor: pointer; box-shadow: 0 12px 28px rgba(0, 0, 0, 0.18); opacity: var(--ld-button-opacity); transition: transform 0.2s ease, opacity 0.2s ease, box-shadow 0.2s ease; }
.ld-menu-book__button:hover { transform: translateY(-1px); opacity: 1; box-shadow: 0 14px 30px rgba(0, 0, 0, 0.22); }
.ld-menu-book__button[disabled] { opacity: 0.45; cursor: not-allowed; transform: none; box-shadow: none; }
.ld-menu-book--nav-sides .ld-menu-book__button { pointer-events: auto; align-self: center; }
.ld-menu-book--nav-sides .ld-menu-book__button--prev { grid-column: 1; grid-row: 1 / span 2; justify-self: start; margin-left: 10px; }
.ld-menu-book--nav-sides .ld-menu-book__button--next { grid-column: 3; grid-row: 1 / span 2; justify-self: end; margin-right: 10px; }
.ld-menu-book__counter { min-width: 140px; text-align: center; font-size: 14px; font-weight: 600; }
.ld-menu-book--nav-sides .ld-menu-book__counter { grid-column: 2; grid-row: 2; justify-self: center; margin-bottom: 12px; padding: 8px 14px; border-radius: 999px; background: var(--ld-counter-bg); backdrop-filter: blur(6px); box-shadow: 0 8px 18px rgba(0, 0, 0, 0.08); }
.ld-menu-book__stage { position: relative; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; min-height: 720px; align-items: stretch; z-index: 2; }
.ld-menu-book--nav-top .ld-menu-book__stage, .ld-menu-book--nav-sides .ld-menu-book__stage { order: 2; }
.ld-menu-book__spine { position: absolute; top: 24px; bottom: 24px; left: 50%; width: 26px; transform: translateX(-50%); border-radius: 999px; background: linear-gradient(90deg, rgba(255,255,255,0.1) 0%, var(--ld-spine-color) 50%, rgba(255,255,255,0.08) 100%); box-shadow: inset 0 0 12px rgba(255,255,255,0.35), 0 10px 24px rgba(0,0,0,0.12); opacity: 0.8; pointer-events: none; z-index: 1; }
.ld-menu-book__page { display: none; position: relative; min-height: inherit; border-radius: var(--ld-radius); overflow: hidden; background: var(--ld-page-bg, #ffffff); box-shadow: 0 20px 45px rgba(0, 0, 0, calc(var(--ld-shadow-opacity) / 100)); transform-origin: center left; transform: perspective(1600px) rotateY(0deg) translateY(0); transition: opacity 0.25s ease, transform 0.35s ease, box-shadow 0.25s ease; border: 0 solid transparent; }
.ld-menu-book__page.is-active { display: block; animation: ldMenuBookFadeIn 0.28s ease; }
.ld-menu-book__page.is-turning-next { transform: perspective(1600px) rotateY(-8deg) translateX(-8px); }
.ld-menu-book__page.is-turning-prev { transform: perspective(1600px) rotateY(8deg) translateX(8px); }
.ld-menu-book__page-inner, .ld-menu-book__media, .ld-menu-book__media img { width: 100%; }
.ld-menu-book__page-inner { position: relative; min-height: inherit; }
.ld-menu-book__page-inner::after { content: ''; position: absolute; inset: 10px; border: 1px solid var(--ld-inner-line-color); border-radius: calc(var(--ld-radius) - 6px); opacity: calc(var(--ld-inner-line-opacity) / 100); pointer-events: none; z-index: 1; }
.ld-menu-book__media { overflow: hidden; height: var(--ld-image-height-current); }
.ld-menu-book__media img { height: 100%; object-fit: var(--ld-image-fit); object-position: var(--ld-image-position); display: block; transform: scale(calc(var(--ld-image-scale-current) / 100)); transform-origin: center center; transition: transform 0.25s ease; }
.ld-menu-book__overlay { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0.08) 0%, var(--ld-overlay, rgba(0,0,0,0.18)) 100%); z-index: 0; }
.ld-menu-book__content { position: absolute; left: 0; right: 0; bottom: 0; padding: 24px; z-index: 2; }
.ld-menu-book__page-title { margin: 0 0 10px; font-size: 24px; line-height: 1.2; }
.ld-menu-book__page-text p:last-child { margin-bottom: 0; }
.ld-menu-book__page-link { display: inline-block; margin-top: 16px; padding: 10px 16px; color: #fff; text-decoration: none; border: 1px solid transparent; border-radius: 999px; font-weight: 600; }
@keyframes ldMenuBookFadeIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 1024px) { .ld-menu-book { --ld-image-scale-current: var(--ld-image-scale-tablet); --ld-image-height-current: var(--ld-image-height-tablet); } }
@media (max-width: 767px) {
  .ld-menu-book { --ld-image-scale-current: var(--ld-image-scale-mobile); --ld-image-height-current: var(--ld-image-height-mobile); }
  .ld-menu-book__stage { grid-template-columns: 1fr; gap: 0; min-height: 520px; }
  .ld-menu-book__counter { min-width: 110px; }
  .ld-menu-book__content { padding: 18px; }
  .ld-menu-book__page-title { font-size: 20px; }
  .ld-menu-book--nav-sides .ld-menu-book__toolbar { grid-template-columns: 52px 1fr 52px; }
  .ld-menu-book--nav-sides .ld-menu-book__button--prev { margin-left: 6px; }
  .ld-menu-book--nav-sides .ld-menu-book__button--next { margin-right: 6px; }
  .ld-menu-book__spine { width: 16px; top: 18px; bottom: 18px; }
  .ld-menu-book__page-inner::after { inset: 8px; }
}
