:root{--primary-color: #00E7C1;--secondary-color: #2D2D2D;--background-color: #0D0D0D;--text-color: #FFFFFF;--border-color: #333333;--hover-color: #00B396;--input-bg: #1A1A1A;font-family:Inter,sans-serif;line-height:1.6;font-weight:400;color-scheme:dark;color:var(--text-color);background-color:var(--background-color);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}body{background-color:var(--background-color);color:var(--text-color);min-height:100vh}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}#app{max-width:1200px;margin:0 auto;padding:2rem}header{text-align:center;margin-bottom:4rem}h1{font-size:3rem;font-weight:600;color:var(--text-color);margin-bottom:1rem}.subtitle{font-size:1.2rem;color:#888;margin-bottom:2rem}.address-container{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.preferences-container{display:flex;justify-content:center;margin-top:1rem}.preferences-container input{width:600px;background:var(--input-bg);border:1px solid var(--border-color);color:var(--text-color);padding:.8rem 1.2rem;border-radius:.5rem;font-size:1rem;transition:border-color .3s}.preferences-container input:focus{outline:none;border-color:var(--primary-color)}input{background:var(--input-bg);border:1px solid var(--border-color);color:var(--text-color);padding:.8rem 1.2rem;border-radius:.5rem;font-size:1rem;width:400px;transition:border-color .3s}input:focus{outline:none;border-color:var(--primary-color)}.button{padding:.8rem 1.5rem;border:none;border-radius:.5rem;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .3s,transform .2s}.button:hover{transform:translateY(-1px)}.button.primary{background-color:var(--primary-color);color:var(--background-color)}.button.primary:hover{background-color:var(--hover-color)}.button.secondary{background-color:var(--secondary-color);color:var(--text-color);border:1px solid var(--border-color)}.button.secondary:hover{background-color:#3d3d3d}.roulette-container{display:flex;flex-direction:column;align-items:center;margin-bottom:4rem}.roulette-wheel{width:300px;height:300px;border-radius:50%;background:var(--secondary-color);border:2px solid var(--primary-color);box-shadow:0 0 30px #00e7c133;display:flex;align-items:center;justify-content:center;margin-bottom:2rem;position:relative;transition:transform 3s cubic-bezier(.4,0,.2,1)}.restaurant-display{text-align:center;padding:2rem}.details-text{color:#888;margin-top:.5rem}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:2rem}.map-container{height:400px;background:var(--secondary-color);border-radius:1rem;overflow:hidden}.details-container{background:var(--secondary-color);padding:2rem;border-radius:1rem;border:1px solid var(--border-color);display:flex;flex-direction:column;gap:1.5rem}#reserve-button{margin-top:1rem;align-self:center}#reserve-button:hover{background-color:var(--hover-color)}.placeholder-text{color:#888;text-align:center}footer{text-align:center;margin-top:4rem;color:#666;font-size:.9rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1800deg)}}.spinning{animation:spin 3s cubic-bezier(.4,0,.2,1)}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.vanilla:hover{filter:drop-shadow(0 0 2em #f7df1eaa)}.card{padding:2em}.read-the-docs{color:#888}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}
