| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117 |
- <!DOCTYPE html>
- <html lang="es">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Biergarten Klein - Pedidos</title>
- <script src="https://cdn.tailwindcss.com"></script>
- <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet">
- <link rel="stylesheet" href="styles.css">
- <script src="https://cdn.jsdelivr.net/npm/marked/marked.min.js"></script>
- <script type="module" src="js/app.js"></script>
- </head>
- <body class="min-h-screen flex flex-col text-base leading-relaxed">
- <div id="welcomeModal" class="modal" style="display: flex;">
- <div class="modal-content text-center">
- <h3 class="text-2xl font-semibold mb-4 accent-red">Bienvenido a Biergarten Klein</h3>
- <p class="text-gray-400 mb-6">Para comenzar, por favor ingresa tu nombre y número de mesa.</p>
- <div class="space-y-4">
- <input type="text" id="userNameInput" class="w-full p-3 bg-gray-700 border border-gray-600 rounded-lg focus:ring-2 focus:ring-accent-red focus:border-transparent outline-none text-white" placeholder="Tu Nombre">
- <input type="number" id="userTableInput" class="w-full p-3 bg-gray-700 border border-gray-600 rounded-lg focus:ring-2 focus:ring-accent-red focus:border-transparent outline-none text-white" placeholder="Número de Mesa">
- </div>
- <button id="startOrderButton" class="w-full mt-6 bg-accent-red hover:bg-red-700 text-white font-bold py-3 px-4 rounded-lg transition duration-300 ease-in-out transform hover:scale-105">
- Comenzar Pedido
- </button>
- </div>
- </div>
- <header class="bg-black shadow-lg py-4">
- <div class="container mx-auto px-4 text-center">
- <h1 class="text-3xl font-bold accent-red tracking-tight">Biergarten <span class="text-white">Klein</span></h1>
- <p class="text-gray-400 text-md mt-1">¡El sabor de la buena compañía!</p>
- </div>
- </header>
- <main class="container mx-auto px-4 py-8 flex-grow grid grid-cols-1 lg:grid-cols-3 gap-8">
-
- <aside class="lg:col-span-1">
- <div id="chat-container" class="sticky top-8 chat-panel-embedded">
- <div class="chat-header">
- <h3 class="text-xl font-semibold accent-red">Chef IA <span class="text-sm text-gray-400">(Asistente Virtual)</span></h3>
- </div>
- <div class="chat-content-area">
- <div id="chatMessages" class="scrollable-chat">
- <div class="chat-bubble chat-bubble-ai">¡Hola! Soy tu asistente en Biergarten Klein. ¿Te gustaría una recomendación de nuestras cervezas artesanales?</div>
- </div>
- <div id="aiLoadingIndicator" class="hidden my-2">
- <div class="loading-spinner"></div>
- <p class="text-center text-sm text-gray-400 mt-1">Chef IA está pensando...</p>
- </div>
- <div class="chat-input-container">
- <input type="text" id="chatInput" class="w-full p-3 bg-gray-700 border border-gray-600 rounded-lg focus:ring-2 focus:ring-accent-red focus:border-transparent outline-none text-white" placeholder="Escribe tu mensaje...">
- <button id="sendChatButton" class="bg-accent-red hover:bg-red-700 text-white font-bold py-2 px-4 rounded-lg transition duration-300">
- Enviar
- </button>
- </div>
- </div>
- </div>
- </aside>
- <div class="lg:col-span-2 space-y-8">
- <section id="productListSection">
- <h2 class="category-title text-3xl font-semibold mb-4 pb-2">Nuestras Cervezas</h2>
- <div id="productList" class="space-y-6">
- </div>
- </section>
- <aside id="cartAside">
- <div class="sticky top-8">
- <h2 class="text-3xl font-semibold mb-4 border-b-2 border-accent-red pb-2">Tu Pedido</h2>
- <div id="cartItems" class="space-y-4 mb-6 product-card p-6 rounded-lg shadow-xl min-h-[150px]">
- <p id="emptyCartText" class="text-gray-400">Tu carrito está vacío.</p>
- </div>
- <div class="product-card p-6 rounded-lg shadow-xl">
- <div class="flex justify-between items-center text-xl font-semibold mb-4">
- <span>Total:</span>
- <span id="cartTotal" class="accent-red">$0</span>
- </div>
- <button id="checkoutButton" class="w-full bg-accent-red hover:bg-red-700 text-white font-bold py-3 px-4 rounded-lg transition duration-300 ease-in-out transform hover:scale-105 disabled:opacity-50 disabled:cursor-not-allowed" disabled>
- Finalizar Pedido
- </button>
- </div>
- </div>
- </aside>
- </div>
- </main>
- <div id="orderConfirmationModal" class="modal">
- <div class="modal-content text-center">
- <span id="closeConfirmationModalButton" class="close-button absolute top-3 right-4">×</span>
- <h3 class="text-2xl font-semibold mb-4 accent-red">¡Pedido Realizado!</h3>
- <p class="text-lg mb-2">Gracias por tu compra en Biergarten Klein.</p>
- <p class="text-gray-400 mb-6">Tu pedido está siendo preparado y llegará pronto.</p>
- <svg class="w-16 h-16 text-green-500 mx-auto mb-4" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"></path></svg>
- <button id="newOrderButton" class="bg-accent-red hover:bg-red-700 text-white font-bold py-2 px-4 rounded-lg">
- Hacer un Nuevo Pedido
- </button>
- </div>
- </div>
- <div id="orderErrorModal" class="modal">
- <div class="modal-content text-center">
- <span id="closeOrderErrorModalButton" class="close-button absolute top-3 right-4">×</span>
- <h3 class="text-2xl font-semibold mb-4 accent-red">¡Error al enviar el pedido!</h3>
- <p class="text-lg mb-2">Hubo un problema al enviar tu pedido. Por favor, inténtalo de nuevo.</p>
- <svg class="w-16 h-16 text-red-500 mx-auto mb-4" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9.172 9.172L14.828 14.828M14.828 9.172L9.172 14.828M12 2a10 10 0 110 20 10 10 0 010-20z"></path></svg>
- <button id="retryButton" class="bg-accent-red hover:bg-red-700 text-white font-bold py-2 px-4 rounded-lg">Reintentar</button>
- </div>
- </div>
- <footer class="bg-black py-6 mt-auto border-t border-gray-800">
- <div class="container mx-auto px-4 text-center text-gray-500">
- <p>© <span id="currentYear"></span> Biergarten Klein. Todos los derechos reservados.</p>
- <p>Diseñado con <span class="accent-red">♥</span> para los amantes de la buena cerveza.</p>
- </div>
- </footer>
- </body>
- </html>
|