:root{--color-primary: #2c3e50;--color-price: #4B96B9;--color-accent: #3498db;--color-background: #ffffff;--color-text: #333333;--color-text-light: #666666;--font-primary: "Poppins", system-ui, sans-serif;--font-secondary: "Playfair Display", Georgia, serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--border-radius-sm: 4px;--border-radius-md: 8px;--border-radius-lg: 16px;--border-radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--transition-fast: .15s ease-in-out;--transition-normal: .3s ease-in-out;--transition-slow: .5s ease-in-out}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-primary);font-size:var(--font-size-base);line-height:1.5;color:var(--color-text);background-color:var(--color-background)}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}h1,h2,h3,h4,h5,h6{font-family:var(--font-secondary);font-weight:700;line-height:1.2;margin-bottom:var(--spacing-md)}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}p{margin-bottom:var(--spacing-md)}.text-sm{font-size:var(--font-size-sm)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.font-bold{font-weight:700}.text-center{text-align:center}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--border-radius-full);font-weight:500;text-decoration:none;cursor:pointer;transition:all var(--transition-normal);font-size:var(--font-size-base)}.btn-primary{background-color:var(--color-primary);color:var(--color-background)}.btn-primary:hover{background-color:color-mix(in srgb,var(--color-primary) 90%,black);transform:translateY(-2px)}.btn-secondary{background-color:var(--color-secondary);color:var(--color-background)}.btn-secondary:hover{background-color:color-mix(in srgb,var(--color-secondary) 90%,black);transform:translateY(-2px)}.btn-outline{background-color:transparent;border:2px solid var(--color-primary);color:var(--color-primary)}.btn-outline:hover{background-color:var(--color-primary);color:var(--color-background);transform:translateY(-2px)}.share-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);background-color:var(--color-accent);color:var(--color-background);border:none;border-radius:var(--border-radius-full);font-weight:500;cursor:pointer;transition:all var(--transition-normal);min-height:44px}.filters{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);justify-content:center;margin-bottom:var(--spacing-xl)}.filter-button{min-height:44px;padding:var(--spacing-sm) var(--spacing-lg);background-color:transparent;border:2px solid var(--color-primary);color:var(--color-primary);border-radius:var(--border-radius-full);font-weight:500;cursor:pointer;transition:all var(--transition-normal)}.filter-button:hover{background-color:var(--color-primary);color:var(--color-background);transform:translateY(-2px)}.filter-button.active{background-color:var(--color-primary);color:var(--color-background)}.card{background-color:var(--color-background);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);overflow:hidden;transition:transform var(--transition-normal)}.card:hover{transform:translateY(-2px)}.card-image{width:100%;height:200px;object-fit:cover}.card-content{padding:var(--spacing-lg)}.card-title{font-family:var(--font-secondary);font-size:var(--font-size-xl);margin-bottom:var(--spacing-sm)}.card-description{color:var(--color-text-light);margin-bottom:var(--spacing-md)}.card-price{font-size:var(--font-size-lg);font-weight:700;color:var(--color-secondary)}.menu-category{margin-bottom:var(--spacing-xl)}.menu-category h3{margin-bottom:var(--spacing-lg);color:var(--color-primary);text-align:center}.menu-items{display:grid;gap:var(--spacing-lg)}.menu-item{background-color:var(--color-background);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-md);transition:transform var(--transition-normal);display:flex;gap:var(--spacing-lg);align-items:flex-start}.menu-item:hover{transform:translateY(-2px)}.menu-item-image{flex-shrink:0;width:120px;height:120px;border-radius:var(--border-radius-md);overflow:hidden;background-color:#f3f4f6}.menu-item-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-normal)}.menu-item:hover .menu-item-image img{transform:scale(1.05)}.menu-item-content{flex:1;min-width:0}.menu-item-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-md);margin-bottom:var(--spacing-sm)}.menu-item h4{font-family:var(--font-secondary);font-size:var(--font-size-lg);margin:0;color:var(--color-primary)}.menu-item .price{font-size:var(--font-size-lg);font-weight:700;color:var(--color-price);white-space:nowrap}.menu-item .description{color:var(--color-text-light);margin-bottom:var(--spacing-sm);line-height:1.4}.menu-item .allergenes{font-size:var(--font-size-sm);color:var(--color-text-light)}@media (max-width: 640px){.menu-item{flex-direction:column;align-items:stretch}.menu-item-image{width:100%;height:200px;margin-bottom:var(--spacing-md)}.menu-item-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.menu-item .price{margin-left:0}}.plat-container{max-width:800px;margin:0 auto}.plat-card{background-color:var(--color-background);border-radius:var(--border-radius-lg);overflow:hidden;box-shadow:var(--shadow-lg)}.plat-image{width:100%;height:300px;overflow:hidden}.plat-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-normal)}.plat-card:hover .plat-image img{transform:scale(1.05)}.plat-info{padding:var(--spacing-xl);display:flex;flex-direction:column}.plat-info h3{font-family:var(--font-secondary);font-size:var(--font-size-2xl);margin-bottom:var(--spacing-md);color:var(--color-primary)}.plat-info .description{font-size:var(--font-size-lg);color:var(--color-text);margin-bottom:var(--spacing-lg);line-height:1.6}.plat-info .price{font-size:var(--font-size-xl);font-weight:700;color:var(--color-price);margin-bottom:var(--spacing-md)}.plat-info .share-button-container{display:flex;justify-content:center;margin-top:var(--spacing-md)}.share-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-xl);background-color:var(--color-accent);color:var(--color-background);border:none;border-radius:var(--border-radius-full);font-weight:500;cursor:pointer;transition:all var(--transition-normal);min-height:44px;min-width:160px}.share-button:hover{background-color:color-mix(in srgb,var(--color-accent) 90%,black);transform:translateY(-2px)}.share-button .material-icons{font-size:var(--font-size-lg)}.schedule-container{max-width:600px;margin:0 auto;padding:var(--spacing-xl);background-color:var(--color-background);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);position:relative}.schedule-row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);border-bottom:1px solid rgba(0,0,0,.1)}.schedule-row:last-child{border-bottom:none}.schedule-row .day{font-weight:600;color:var(--color-primary);min-width:100px}.schedule-row .hours{display:flex;flex-direction:column;gap:var(--spacing-xs);text-align:right}.schedule-row .hours span{color:var(--color-text)}.open-status{display:flex;align-items:center;justify-content:center;width:fit-content;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius-full);font-weight:500;margin:0 auto var(--spacing-lg)}.open-status.open{background-color:#22c55e;color:#fff}.open-status.closed{background-color:var(--color-secondary);color:#fff}@media (min-width: 768px){.schedule-row .hours{flex-direction:row;gap:var(--spacing-xl)}}.loading{text-align:center;padding:var(--spacing-lg);color:var(--color-text-light)}.error-message{text-align:center;padding:var(--spacing-lg);color:var(--color-secondary)}.error-message button{margin-top:var(--spacing-md)}.footer{background-color:var(--color-primary);color:var(--color-background);padding:var(--spacing-2xl) 0}.footer-section h3{color:var(--color-background);margin-bottom:var(--spacing-lg)}.footer-section address{font-style:normal;margin-bottom:var(--spacing-md)}.footer-section address p{margin-bottom:var(--spacing-xs)}.contact-link{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--color-background);text-decoration:none;transition:opacity var(--transition-normal);margin-bottom:var(--spacing-sm)}.contact-link:hover{opacity:.8}.social-links{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-lg)}.social-link{color:var(--color-background);text-decoration:none;transition:opacity var(--transition-normal)}.social-link:hover{opacity:.8}.footer .contact-info{background-color:#ffffff1a;border-radius:var(--border-radius-lg);padding:var(--spacing-lg)}.copyright{margin-top:var(--spacing-2xl);padding-top:var(--spacing-lg);border-top:1px solid rgba(255,255,255,.1);text-align:center;font-size:var(--font-size-sm)}.footer .copyright a{color:#c6ced5;text-decoration:none}.footer .copyright a:hover{text-decoration:underline}.material-icons{font-size:var(--font-size-xl)}.header{position:sticky;top:0;z-index:50;background-color:var(--color-background);box-shadow:var(--shadow-sm);padding:var(--spacing-md) 0;width:100%}.header-content{max-width:var(--breakpoint-lg);margin:0 auto;padding:0 var(--spacing-md);display:flex;justify-content:space-between;align-items:center}.logo{font-family:var(--font-secondary);font-size:var(--font-size-2xl);color:var(--color-primary);text-decoration:none;font-weight:700}.nav-toggle{display:none;background:none;border:none;padding:var(--spacing-sm);cursor:pointer;color:var(--color-primary)}.nav-toggle .material-icons{font-size:2rem}.nav-list{display:flex;gap:var(--spacing-md);list-style:none;margin:0;padding:0}.nav-list .btn{white-space:nowrap}@media (max-width: 767px){.nav-toggle{display:block}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--color-background);padding:var(--spacing-md);box-shadow:var(--shadow-md)}.nav.active{display:block}.nav-list{flex-direction:column;align-items:stretch;gap:var(--spacing-sm)}.nav-list .btn{width:100%;text-align:left}}@media (min-width: 768px){.nav{display:block!important}}.container{max-width:var(--breakpoint-lg);margin:0 auto;padding:0 var(--spacing-md)}.grid{display:grid;gap:var(--spacing-lg)}.grid-2,.grid-3{grid-template-columns:repeat(1,1fr)}@media (min-width: var(--breakpoint-md)){.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}}.install-section{background-color:var(--color-primary);color:var(--color-background);padding:var(--spacing-xl) 0}.install-container{display:flex;justify-content:center;align-items:center;text-align:center}.install-content{max-width:600px;margin:0 auto;padding:var(--spacing-xl)}.install-content h2{color:var(--color-background);margin-bottom:var(--spacing-md)}.install-content p{margin-bottom:var(--spacing-lg);font-size:var(--font-size-lg)}.install-button-container{display:flex;justify-content:center}.install-button{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);background-color:var(--color-accent);border:none;border-radius:var(--border-radius-full);color:var(--color-background);cursor:pointer;transition:all var(--transition-normal);font-size:var(--font-size-lg)}.install-button:hover{background-color:color-mix(in srgb,var(--color-accent) 90%,black);transform:translateY(-2px)}.install-button .material-icons{font-size:var(--font-size-xl)}@media (max-width: 767px){.install-button{width:100%;justify-content:center;padding:var(--spacing-lg)}}.container{width:100%;max-width:var(--breakpoint-lg);margin:0 auto;padding:0 var(--spacing-md)}.section{padding:var(--spacing-2xl) 0}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hover-shadow:hover{box-shadow:var(--shadow-lg)}.fade-in{animation:fadeIn var(--transition-normal)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}
