/*! tailwindcss v4.3.1 | MIT License | https://tailwindcss.com */@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.container{width:100%}.mx-auto{margin-inline:auto}.-mb-px{margin-bottom:-1px}.block{display:block}.flex{display:flex}.grid{display:grid}.inline-block{display:inline-block}.h-full{height:100%}.max-h-\[70vh\]{max-height:70vh}.min-h-screen{min-height:100vh}.w-1\/2{width:50%}.w-1\/3{width:33.3333%}.w-full{width:100%}.max-w-none{max-width:none}.flex-1{flex:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.overflow-y-auto{overflow-y:auto}.rounded-full{border-radius:3.40282e38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-transparent{border-color:#0000}.bg-\[\#2B7A78\]{background-color:#2b7a78}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-\[\#2B7A78\]{color:#2b7a78}.capitalize{text-transform:capitalize}.italic{font-style:italic}.underline{text-decoration-line:underline}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (hover:hover){.hover\:bg-\[\#2B7A78\]:hover{background-color:#2b7a78}.hover\:underline:hover{text-decoration-line:underline}}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-\[\#2B7A78\]:focus{--tw-ring-color:#2b7a78}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.disabled\:opacity-50:disabled{opacity:.5}:root{color-scheme:light dark;color:#ffffffde;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#242424;font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}a{color:#646cff;-webkit-text-decoration:inherit;text-decoration:inherit;font-weight:500}a:hover{color:#535bf2}body{min-width:320px;min-height:100vh;margin:0}h1{font-size:3.2em;line-height:1.1}button{cursor:pointer;border:1px solid #0000;border-radius:8px;padding:.6em 1.2em;font-family:inherit;font-size:1em;font-weight:500;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0;background-color:#f4f4f9;color:#333;min-height:100vh;display:flex;flex-direction:column;word-wrap:break-word;overflow-x:hidden}img{max-width:100%;height:auto}.App{text-align:center;max-width:100%;margin:0 auto;padding:40px;flex-grow:1;display:flex;flex-direction:column;width:100%;box-sizing:border-box}.app-header{background-color:#2b7a78;color:#fff;padding:40px;border-radius:10px;margin-bottom:40px;box-shadow:0 4px 12px #00000026;display:flex;flex-wrap:wrap;justify-content:center}.app-header h1{margin:0;font-size:2em;max-width:100%;text-align:center}nav ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;justify-content:center;background-color:#fff;border-radius:10px;margin-bottom:40px;box-shadow:0 2px 8px #0000001a;width:100%;box-sizing:border-box}nav li{margin:10px 15px}nav a{text-decoration:none;color:#555;font-weight:700;padding:10px 15px;border-radius:5px;transition:background-color .3s ease,color .3s ease}nav a:hover{background-color:#2b7a78;color:#fff}.search-section{margin-bottom:30px}.search-bar{width:80%;padding:12px 20px;border:1px solid #ccc;border-radius:25px;font-size:1em;box-shadow:0 2px 4px #0000000d}.filter-bubbles-section{margin-bottom:30px}.filter-bubbles-container{display:flex;overflow-x:auto;padding-bottom:15px;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.filter-bubbles-container::-webkit-scrollbar{display:none}.filter-bubble{flex-shrink:0;padding:20px 30px;margin-right:15px;border:2px solid transparent;border-radius:25px;cursor:pointer;font-size:1.1em;white-space:nowrap;transition:all .3s ease;box-shadow:0 4px 8px #0000001a;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:120px;min-height:90px}.filter-bubble:hover{transform:translateY(-3px);box-shadow:0 6px 12px #0003}.filter-bubble.active{border-color:#4caf50;background-color:#4caf50;color:#fff;transform:scale(1.05)}.featured-restaurants-section{margin-bottom:40px}.featured-restaurants-section h2{color:#2b7a78;margin-bottom:20px}.restaurant-cards-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;justify-content:center}.restaurant-card{background-color:#fff;border-radius:15px;box-shadow:0 8px 16px #0000001a;padding:25px;text-align:left;transition:all .3s ease}.restaurant-card:hover{transform:translateY(-5px);box-shadow:0 12px 24px #0003}.restaurant-card h3{color:#333;margin-top:0;font-size:1.5em}.allergen-tags{margin-top:10px}.allergen-tag{display:inline-block;padding:5px 10px;border-radius:15px;color:#fff;font-size:.8em;margin-right:5px;margin-bottom:5px}.about-section{background-color:#def2f1;padding:30px;border-radius:15px;margin-bottom:40px;box-shadow:0 4px 10px #00000014}.about-section h2{color:#2b7a78;margin-top:0}.about-section p{font-size:1.1em;line-height:1.6;margin-bottom:20px}.learn-more-button{background-color:#2b7a78;color:#fff;padding:10px 20px;border-radius:25px;text-decoration:none;font-weight:700;transition:background-color .3s ease}.learn-more-button:hover{background-color:#1a5a58}.app-footer{display:flex;flex-wrap:wrap;justify-content:center;padding:20px;border-top:1px solid #eee;background-color:#f9f9f9;border-radius:10px;box-shadow:0 -2px 4px #00000008}.footer-button{background-color:#def2f1;color:#2b7a78;border:1px solid #2B7A78;padding:10px 15px;border-radius:20px;margin:5px 8px;font-size:.9em;font-weight:700;transition:background-color .3s ease}.footer-button:hover{background-color:#2b7a78;color:#fff}.back-to-home-button{color:#fff}.card{background-color:#fff;border-radius:15px;box-shadow:0 8px 16px #0000001a;padding:25px;margin-bottom:30px}.card-header{margin-bottom:20px}.card-title{font-size:1.5em;font-weight:700;color:#333}.card-subtitle{font-size:1em;color:#777}.form-input,.form-checkbox{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;padding:12px 20px;border:1px solid #ccc;border-radius:25px;font-size:1em;box-shadow:0 2px 4px #0000000d;transition:all .3s ease;background-color:#fff;box-sizing:border-box}.form-checkbox{width:1.25em;height:1.25em;border-radius:5px}.form-input:focus,.form-checkbox:focus{outline:none;border-color:#2b7a78;box-shadow:0 0 0 3px #2b7a7833}.form-label{display:block;margin-bottom:5px;font-weight:700;color:#555}.btn{background-color:#2b7a78;color:#fff;padding:12px 25px;border-radius:25px;text-decoration:none;font-weight:700;transition:background-color .3s ease;border:none;cursor:pointer}.btn:hover{background-color:#1a5a58}.btn-secondary{background-color:#f0f0f0;color:#555}.btn-secondary:hover{background-color:#e0e0e0}.btn-danger{background-color:#e53e3e}.btn-danger:hover{background-color:#c53030}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background-color:#fff;padding:30px;border-radius:15px;box-shadow:0 5px 15px #0000004d;max-width:500px;width:90%;text-align:center}.allergen-tag-simple{display:inline-block;padding:5px 10px;border-radius:15px;color:#fff;font-size:.8em;margin-right:5px;margin-bottom:5px;background-color:#e53e3e}@media (max-width: 768px){.App{padding:20px}nav ul{padding:15px 0;flex-direction:column;align-items:center}nav li{margin:3px 5px}nav a{padding:6px 10px;font-size:.9em;white-space:normal;word-break:break-word}.app-header h1{font-size:1.8em;word-break:break-word}.filter-bubble{min-width:100px;min-height:70px;padding:15px;font-size:1em}.app-footer{padding:10px}.footer-button{padding:12px 18px;font-size:1em;margin:5px}}
