/* ============================================
   Middle Feast Restaurant - Menu Styles
   ============================================ */

.menu-page .header {
    background-color: var(--color-black);
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.45);
}

.menu-page .nav-link {
    color: var(--color-white);
}

.menu-page .nav-link.active,
.menu-page .nav-link:hover {
    color: var(--color-gold);
}

.menu-section {
    padding: var(--spacing-2xl) var(--spacing-md);
    background:
        radial-gradient(circle at 15% 20%, rgba(212, 175, 55, 0.16), transparent 45%),
        linear-gradient(170deg, var(--color-black) 0%, var(--color-dark-gray) 100%);
}

.menu-pdf-layout {
    max-width: 1320px;
    margin: 0 auto;
}

.menu-viewer {
    background-color: rgba(15, 15, 15, 0.78);
    border: 1px solid rgba(212, 175, 55, 0.45);
    border-radius: 14px;
    box-shadow: 0 18px 36px rgba(0, 0, 0, 0.35);
    padding: var(--spacing-md);
    backdrop-filter: blur(4px);
}

.menu-canvas-wrap {
    border-radius: 10px;
    overflow: hidden;
    background: #141414;
    border: 1px solid rgba(255, 255, 255, 0.12);
    min-height: 320px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.menu-pdf-frame {
    width: 100%;
    min-height: min(84vh, 1200px);
    border: 0;
    display: block;
    transform-origin: center center;
    background: #0f0f0f;
}

.menu-pdf-frame.is-animating-next {
    animation: menuPageInNext 0.45s ease both;
}

.menu-pdf-frame.is-animating-prev {
    animation: menuPageInPrev 0.45s ease both;
}

.menu-controls {
    margin-top: var(--spacing-lg);
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: var(--spacing-sm);
}

.menu-control-btn {
    border: 1px solid rgba(212, 175, 55, 0.7);
    background: transparent;
    color: var(--color-white);
    font-family: var(--font-body);
    font-weight: 600;
    padding: 0.65rem 0.95rem;
    border-radius: 999px;
    cursor: pointer;
    transition: transform var(--transition-base), background-color var(--transition-base), color var(--transition-base), opacity var(--transition-base);
}

.menu-control-btn:hover:not(:disabled) {
    background-color: var(--color-gold);
    color: var(--color-black);
    transform: translateY(-1px);
}

.menu-control-btn:disabled {
    opacity: 0.45;
    cursor: not-allowed;
}

.menu-page-indicator {
    color: var(--color-white);
    font-weight: 600;
    letter-spacing: 0.03em;
}

.menu-controls #menu-prev {
    justify-self: start;
}

.menu-controls #menu-next {
    justify-self: end;
}

.menu-download-wrap {
    margin-top: var(--spacing-lg);
    text-align: center;
}

.menu-download-link {
    color: var(--color-gold);
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 0.2em;
}

@keyframes menuPageInNext {
    from {
        opacity: 0;
        transform: translateX(20px) scale(0.98);
    }
    to {
        opacity: 1;
        transform: translateX(0) scale(1);
    }
}

@keyframes menuPageInPrev {
    from {
        opacity: 0;
        transform: translateX(-20px) scale(0.98);
    }
    to {
        opacity: 1;
        transform: translateX(0) scale(1);
    }
}

@media (max-width: 768px) {
    .menu-section {
        padding: var(--spacing-xl) var(--spacing-sm);
    }

    .menu-viewer {
        padding: var(--spacing-md);
    }

    .menu-controls {
        grid-template-columns: 1fr;
        gap: var(--spacing-sm);
    }

    .menu-controls #menu-prev,
    .menu-controls #menu-next,
    .menu-page-indicator {
        justify-self: center;
    }

    .menu-control-btn {
        width: min(100%, 280px);
    }

    .menu-pdf-frame {
        min-height: 72vh;
    }
}

@media (max-width: 480px) {
    .menu-pdf-frame {
        min-height: 76vh;
    }
}
