*{box-sizing:border-box;margin:0;padding:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:root{--primary-color:#3f1e01;--primary-dark:#0c0c0c;--accent-color:#cd853f;--bg-color:#171312;--text-color:#e0ddd9;--dish-name-color:#e0ddd9;--price-color:#f1c40f;--card-bg:#201913;--restaurant-card-bg:#202020;--ball-bg:rgb(63, 30, 1, 0.67);--border-color:rgba(255, 255, 255, 0.1);--color-success:#2ecc71;--color-success-dark:#27ae60;--color-error:#e74c3c;--color-error-dark:#c0392b;--color-warning:#ff9800;--color-warning-dark:#ef6c00;--color-info:#2196f3;--color-info-dark:#0d47a1;--color-white:#ffffff;--color-black:#000000;--color-muted:#555;--color-overlay-light:rgba(255, 255, 255, 0.1);--color-overlay-dark:rgba(0, 0, 0, 0.7);--dish-modal-open:rgba(60, 37, 18, 0.5);--btn-bg:#cd853f;--btn-hover-bg:#0c0c0c;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--font-main:"Segoe UI",sans-serif;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:2rem;--space-8:3rem;--z-base:1;--z-dropdown:100;--z-sticky:500;--z-sidebar:1000;--z-modal:2000;--z-lightbox:3000;--z-toast:4000;--radius:12px;--radius-sm:6px;--radius-pill:50px;--radius-circle:50%;--shadow:0 6px 20px rgba(0, 0, 0, 0.08);--shadow-lg:0 8px 25px rgba(0, 0, 0, 0.3);--transition:0.3s ease}body,html{display:flex;flex-direction:column;margin:0;height:100%;overflow-x:clip}body{background-color:var(--bg-color);min-height:100vh;scroll-padding-top:70px;color:var(--text-color);line-height:1.6;font-family:var(--font-main);-webkit-tap-highlight-color:transparent}h1{margin-bottom:1rem;color:var(--text-color);font-size:var(--text-3xl)}h2{margin-bottom:1rem;color:var(--text-color);font-size:1.8rem}h3{margin-bottom:1rem;color:var(--accent-color);font-size:1.3rem}.sidebar{display:grid;position:fixed;top:0;left:0;grid-template-columns:auto 1fr auto;align-items:center;z-index:var(--z-sidebar);transition:height .3s ease;box-sizing:border-box;box-shadow:0 2px 10px rgba(0,0,0,.3);border-bottom:1px solid var(--border-color);background-color:var(--color-black);padding:0;width:100%;height:70px;overflow-x:auto;overflow-y:hidden}.sidebar>a:first-child{justify-self:start;margin-left:10px}.sidebar img{flex-shrink:0;transition:transform .3s ease-in-out;margin-left:15px;width:4rem;height:auto}.sidebar img:hover{transform:scale(1.08)}.sidebar ul{display:flex;flex:1;flex-direction:row;justify-content:center;align-items:center;gap:0;margin:0;padding:0;height:100%;list-style:none}.sidebar ul li{display:flex;justify-content:center;align-items:center;border-left:1px solid rgba(255,255,255,.1);padding:0;height:100%;white-space:nowrap}.sidebar ul li:first-child{border-left:none}.sidebar ul li a{display:flex;position:relative;justify-content:center;align-items:center;opacity:1;transition:all .3s ease;padding:0 15px;width:100%;height:100%;pointer-events:auto;color:var(--color-white);font-weight:500;font-size:var(--text-sm);text-align:center;text-decoration:none;white-space:nowrap}.sidebar ul li a:hover{background-color:var(--color-overlay-light)}.sidebar ul li a.active{background-color:var(--accent-color);font-weight:600}.sidebar ul li a.active::after{position:absolute;bottom:0;left:0;background-color:var(--price-color);width:100%;height:3px;content:""}.sidebar ul li a.active:hover{opacity:.9;background-color:var(--accent-color)}.sidebar .lang-toggle{flex:0 0 auto;transition:background .3s;cursor:pointer;margin-right:15px;border:none;border-radius:var(--radius-sm);background:#333;padding:8px 14px;color:var(--color-white);font-weight:600;font-size:14px;white-space:nowrap}.sidebar .lang-toggle:hover{background:var(--color-muted)}.main-content{display:flex;flex:1;flex-direction:column;transition:margin-top .3s ease;margin-top:70px;margin-left:0;background-color:var(--bg-color);padding:1.5rem;width:100%;min-height:calc(100vh - 70px);overflow-x:clip}section{margin:2rem 0;padding:0 1rem;width:100%}footer{flex-shrink:0;margin-top:auto;border-top:1px solid var(--border-color);background-color:var(--bg-color);padding:1.5rem 1rem;width:100%;color:var(--color-white);font-size:var(--text-base);text-align:center}.hero{margin-top:0;margin-bottom:2rem;box-shadow:var(--shadow);border-radius:var(--radius);background:var(--primary-color);padding:2rem 1rem;width:100%;color:var(--color-white);text-align:center}.hero h1,.hero h2{margin-bottom:var(--space-2);color:var(--color-white);font-size:var(--text-3xl)}.hero p{opacity:.9;font-weight:500;font-size:1rem}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;margin-top:0;width:100%}.card{display:flex;flex-direction:column;transition:transform var(--transition),box-shadow var(--transition);cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.1);border:1px solid var(--border-color);border-radius:var(--radius);background-color:var(--card-bg);padding:0;width:100%;height:380px;overflow:hidden}.card:hover{transform:translateY(-5px);box-shadow:0 8px 25px rgba(120,120,104,.3)}.card:hover .card-image img{transform:scale(1.05)}.card-image{position:relative;animation:loading 1.5s infinite;background:linear-gradient(90deg,#2a2a2a 25%,#333 50%,#2a2a2a 75%);background-size:200% 100%;width:100%;min-height:200px;max-height:200px;overflow:hidden}.card-image img{display:block;transition:transform .5s ease;width:100%;height:100%;object-fit:cover}.card-content{display:flex;flex-grow:1;flex-direction:column;justify-content:space-between;padding:1.2rem;height:45%}.card-top{margin-bottom:.2rem}.card-bottom{display:flex;justify-content:space-between;align-items:flex-end;margin-top:auto}.card-title{display:-webkit-box;margin:0 0 .25rem 0;overflow:hidden;color:var(--dish-name-color);font-weight:600;font-size:1.2rem;line-height:1.3;-webkit-box-orient:vertical;-webkit-line-clamp:2}.card-price{position:absolute;top:12px;right:12px;z-index:5;backdrop-filter:blur(4px);box-shadow:0 4px 10px rgba(0,0,0,.4);border-radius:20px;background:rgba(0,0,0,.9);padding:8px 12px;color:var(--price-color);font-weight:700;font-size:.9rem;transition:transform .3s ease-in-out}.card-price:hover{transform:scale(1.05)}.card-restaurant{display:inline-block;position:relative;transition:all .2s ease;padding:2px 0;color:var(--accent-color);font-weight:500;font-size:.9rem;text-decoration:none}.card-restaurant:hover{transform:translateY(-1px);color:var(--text-color)}.card-restaurant::after{position:absolute;bottom:0;left:0;transition:width .3s ease;background:var(--accent-color);width:0;height:1px;content:""}.card-restaurant:hover::after{width:100%}.card-restaurant:active{transform:translateY(0)}.card-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px;max-height:60px;overflow:hidden;text-decoration:none}.restaurants-wrapper{display:flex;flex:1;flex-direction:column;width:100%}.restaurants-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));align-items:start;flex:1;gap:1.5rem;margin-bottom:2rem;padding:1.5rem;width:100%;min-height:0}.restaurant-card{display:flex;flex-direction:column;transition:transform var(--transition);box-shadow:var(--shadow);border:1px solid var(--border-color);border-radius:var(--radius);background:var(--restaurant-card-bg);overflow:hidden}.restaurant-card:hover{transform:translateY(-5px)}.restaurant-image{animation:loading 1.5s infinite;border-radius:12px 12px 0 0;background:linear-gradient(90deg,#2a2a2a 25%,#333 50%,#2a2a2a 75%);background-size:200% 100%;width:100%;height:140px;overflow:hidden}.restaurant-image img{transition:transform .3s ease;width:100%;height:100%;object-fit:cover}.restaurant-info{padding:.75rem .85rem}.restaurant-info-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.restaurant-info h3{margin:0;color:var(--dish-name-color);font-size:1.1rem;font-weight:600;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.status-badge{display:inline-flex;align-items:center;gap:5px;flex-shrink:0;border-radius:50px;padding:4px 10px;font-size:.75rem;font-weight:600;line-height:1;white-space:nowrap;transition:background-color .3s ease,color .3s ease}.status-badge::before{content:'';display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.status-badge.open{background-color:rgba(46,204,113,.15);color:#2ecc71}.status-badge.open::before{animation:statusPulse 1.8s ease infinite}.status-badge.closed{background-color:rgba(231,76,60,.15);color:#e74c3c}.status-badge.unknown{background-color:rgba(241,196,15,.12);color:#f1c40f}@keyframes statusPulse{0%,100%{opacity:1}50%{opacity:.4}}.restaurant-address{display:flex;align-items:center;gap:.4rem;margin:.4rem 0 0;color:#a8a5a1;font-size:.82rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.restaurant-address i{color:var(--accent-color);font-size:.75rem;flex-shrink:0}.card-details-link{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.5rem;padding:.5rem 0 0;border-top:1px solid var(--border-color);color:var(--accent-color);font-size:.82rem;font-weight:500;text-decoration:none;transition:color .2s ease}.card-details-link:hover{color:var(--text-color)}.card-details-link i{font-size:.7rem;transition:transform .2s ease}.card-details-link:hover i{transform:translateX(3px)}.restaurant-contact{margin-bottom:.3rem}.restaurant-contact p{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.9rem}.restaurant-contact p a{transition:color .3s ease;color:var(--accent-color);text-decoration:none}.restaurant-contact p a:hover{color:#e0ddd9;text-decoration:underline}.featured-restaurants{margin:2rem 0;padding:0 1rem;width:100%}.restaurants-horizontal{display:flex;gap:1rem;margin:0 -.5rem;padding:1rem .5rem;overflow-x:auto;scrollbar-color:var(--accent-color) transparent;scrollbar-width:thin;-webkit-overflow-scrolling:touch;cursor:grab;user-select:none}.restaurants-horizontal.dragging{cursor:grabbing}.restaurants-horizontal::-webkit-scrollbar{height:4px}.restaurants-horizontal::-webkit-scrollbar-thumb{border-radius:2px;background-color:var(--accent-color)}.restaurants-horizontal::-webkit-scrollbar-thumb:hover{background-color:var(--accent-color)}.restaurants-horizontal::-webkit-scrollbar-track{background:0 0}.restaurant-ball{flex:0 0 auto;transition:transform .3s ease,box-shadow .3s ease;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.2);border:1px solid var(--border-color);border-radius:20px;background:var(--ball-bg);width:180px;overflow:hidden;text-align:center}.restaurant-ball:hover{transform:translateY(-5px);box-shadow:0 8px 20px rgba(0,0,0,.3)}.restaurant-name{margin:0;padding:.8rem;overflow:hidden;color:var(--text-color);font-weight:600;font-size:.95rem;line-height:1.3;text-align:center;text-overflow:ellipsis;white-space:nowrap}.dish-modal{display:flex;position:fixed;top:0;left:0;justify-content:center;align-items:center;visibility:hidden;opacity:0;z-index:var(--z-modal);backdrop-filter:blur(5px);transition:opacity .3s ease,visibility .3s ease;background-color:rgba(0,0,0,.95);padding:1rem;width:100%;height:100%}.dish-modal.active{visibility:visible;opacity:1}.modal-content{display:flex;position:relative;box-shadow:0 20px 40px rgba(0,0,0,.5);border-radius:var(--radius);background-color:var(--dish-modal-open);width:90%;max-width:1000px;max-height:90vh;overflow:hidden}.modal-image{flex:1;background:#000;min-width:300px;max-width:50%;overflow:hidden}.modal-image img{display:block;width:100%;height:100%;object-fit:cover}.modal-details{position:relative;flex:1;padding:1.5rem;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal-details a{transition:all .2s ease;color:inherit;text-decoration:none}.modal-details .modal-restaurant a:hover{text-decoration:none}.modal-title{margin-bottom:.5rem;color:var(--dish-name-color);font-weight:700;font-size:1.5rem;line-height:1.3}.modal-restaurant{display:inline-block;position:relative;transition:all .2s ease;cursor:pointer;margin-bottom:15px;padding:2px 0;color:var(--accent-color);font-weight:600;font-size:1rem;text-decoration:none}.modal-restaurant:hover{transform:translateY(-1px);color:var(--text-color)}.modal-restaurant::after{position:absolute;bottom:0;left:0;transition:width .3s ease;background:var(--accent-color);width:0;height:1px;content:""}.modal-restaurant:hover::after{width:100%}.modal-restaurant:active{transform:translateY(0)}.modal-ingredients{margin-bottom:1.5rem;font-size:1rem;line-height:1.6}.modal-variants{margin-bottom:1.5rem;border-radius:var(--radius);background:rgba(0,0,0,.2);padding:1rem}.variant-item{display:flex;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.1);padding:.5rem 0}.variant-item:last-child{border-bottom:none}.modal-close{display:flex;position:absolute;top:1rem;right:1rem;justify-content:center;align-items:center;z-index:10;transition:all .3s ease;cursor:pointer;border:none;border-radius:50%;background:var(--color-overlay-dark);width:40px;height:40px;color:var(--color-white);font-size:var(--text-2xl)}.modal-close:hover{background:rgba(0,0,0,.9);transform:scale(1.1);box-shadow:0 4px 12px rgba(0,0,0,.5)}.modal-close:active{transform:scale(1.05)}.image-lightbox{display:none;position:fixed;justify-content:center;align-items:center;z-index:var(--z-lightbox);backdrop-filter:blur(10px);inset:0;background:rgba(0,0,0,.98);padding:1rem}.image-lightbox.active{display:flex}.image-lightbox img{box-shadow:0 10px 40px rgba(0,0,0,.8);border-radius:6px;max-width:95%;max-height:95%;object-fit:contain}.lightbox-close{display:flex;position:absolute;top:1rem;right:1rem;justify-content:center;align-items:center;z-index:10;backdrop-filter:blur(10px);transition:background .3s ease;cursor:pointer;border:none;border-radius:50%;background:rgba(255,255,255,.15);width:44px;height:44px;color:#fff;font-size:1.5rem}.lightbox-close:hover{background:rgba(255,255,255,.25)}.image-slider{position:relative;border-radius:var(--radius) var(--radius) 0 0;width:100%;aspect-ratio:16/10;overflow:hidden}.slider-container{display:flex;transition:transform .5s ease;will-change:transform;height:100%}.slider-image{background-position:center;background-size:cover;background-repeat:no-repeat;min-width:100%;height:100%}.image-slider .slider-container{display:block;position:relative;transition:none;will-change:auto}.image-slider .slider-image{position:absolute;top:0;left:0;width:100%;min-width:0;border-radius:6px;transition:transform .5s ease,opacity .5s ease;opacity:0;transform:scale(.85);z-index:0}.image-slider .slider-image:first-child{opacity:1;transform:scale(1);z-index:2}.slider-nav{display:flex;position:absolute;top:50%;justify-content:space-between;transform:translateY(-50%);z-index:2;box-sizing:border-box;padding:0 10px;width:100%}.slider-btn{display:flex;justify-content:center;align-items:center;backdrop-filter:blur(5px);transition:background var(--transition);cursor:pointer;border:none;border-radius:50%;background:rgba(0,0,0,.7);padding:8px 12px;width:36px;height:36px;color:#fff;font-size:16px}.slider-btn:hover{background:rgba(0,0,0,.9)}.slider-dots{display:flex;position:absolute;right:0;bottom:15px;left:0;justify-content:center;gap:5px;z-index:2}.slider-dot{transition:background var(--transition);cursor:pointer;border-radius:50%;background:rgba(255,255,255,.5);width:8px;height:8px}.slider-dot.active{transform:scale(1.2);background:#fff}.slider-indicator{position:absolute;top:0;width:8px;height:8px;border-radius:50%;background:#fff;box-shadow:0 0 6px rgba(255,255,255,.5);pointer-events:none;z-index:1;transition:left .3s ease}.slider-dots.has-indicator .slider-dot{background:rgba(255,255,255,.3)}.slider-dots.has-indicator .slider-dot.active{background:rgba(255,255,255,.3);transform:none}.tag{display:inline-flex;align-items:center;transition:all .2s ease;cursor:pointer;margin:2px;border:1px solid var(--border-color);border-radius:6px;background:rgba(255,255,255,.1);padding:4px 8px;color:var(--text-color);font-weight:500;font-size:.8rem;text-decoration:none}.tag:hover{transform:translateY(-1px);box-shadow:0 2px 4px rgba(0,0,0,.1);background:rgba(255,255,255,.2)}.tag:active{transform:translateY(0)}.restaurant-count,.tag-count{display:inline-flex;justify-content:center;align-items:center;transition:all .3s ease;border-radius:50%;background:var(--accent-color);width:18px;height:18px;color:#fff;font-weight:700;font-size:.7rem}.tag-count{margin-left:4px}.restaurant-count{margin-right:4px}#toggleTagsBtn{transition:all .3s ease;cursor:pointer;margin:0;border:none;border-radius:50px;background:linear-gradient(135deg,var(--btn-bg) 0,var(--ball-bg) 100%);padding:14px 24px;width:auto;max-width:none;white-space:nowrap;color:#fff;font-weight:600;font-size:1rem;flex-shrink:0}#toggleTagsBtn:hover{transform:translateY(-3px);box-shadow:0 8px 12px var(--accent-color)}#toggleTagsBtn:active{transform:scale(.97);box-shadow:0 8px 12px var(--accent-color)}.filter-form{display:none;transition:opacity var(--transition);margin-bottom:2rem;box-shadow:var(--shadow);border:1px solid var(--border-color);border-radius:var(--radius);background:var(--card-bg);padding:1.2rem;width:100%}.filter-form.active{display:block;animation:slideDown .3s ease}.filter-form h3{margin-bottom:1rem;color:var(--text-color);font-size:1.1rem}.filter-submit{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.5rem}.filter-submit button{flex:1;transition:background var(--transition),transform var(--transition);cursor:pointer;border:none;border-radius:var(--radius);background:var(--btn-bg);padding:.8rem 1.5rem;min-width:120px;color:#fff;font-weight:600}.filter-submit button:hover{transform:translateY(-1px);background:var(--btn-hover-bg)}#sort{appearance:none;-webkit-appearance:none;-moz-appearance:none;transition:all .3s;cursor:pointer;border:1px solid var(--border-color);border-radius:10px;background:var(--card-bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23e0ddd9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center/16px;padding:12px 16px;padding-right:40px;width:100%;color:var(--text-color);font-weight:500;font-size:1rem}#sort:focus{outline:0;box-shadow:0 0 0 3px rgba(205,133,63,.15);border-color:var(--accent-color)}.search-container #sort{border-radius:50px;padding:14px 40px 14px 16px;width:auto;font-weight:600;flex-shrink:0;white-space:nowrap}.button{display:block;transition:background .3s ease-in-out,transform .3s ease-in-out;cursor:pointer;margin:auto;margin-bottom:1rem;box-shadow:0 4px 12px rgba(205,133,63,.25);border:none;border-radius:100px;background:var(--btn-bg);padding:.8rem 1.5rem;width:100%;max-width:300px;color:#fff;font-weight:600;font-size:1rem}.button:hover{transform:translateY(-2px) scale(1.02);background:var(--btn-hover-bg)}.button:active{transform:scale(.98)}.view-menu-button{display:inline-flex;align-items:center;gap:8px;transition:all .3s ease;cursor:pointer;box-shadow:0 2px 8px rgba(205,133,63,.2);border:none;border-radius:6px;background:linear-gradient(135deg,var(--accent-color) 0,var(--primary-color) 100%);padding:10px 20px;color:#fff;font-weight:600;font-size:14px;text-decoration:none;white-space:nowrap}.view-menu-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(63,30,1,.3)}.view-menu-button:active{transform:translateY(0);box-shadow:0 2px 4px rgba(63,30,1,.2)}.view-all{display:inline-flex;align-items:center;gap:5px;color:var(--accent-color);font-weight:600;font-size:.95rem;text-decoration:none;transition:transform .35s ease-in-out,color .35s ease-in-out}.view-all:hover{transform:translateY(-2px) scale(1.06)}.share-btn{display:flex;justify-content:center;align-items:center;gap:8px;transition:all .3s ease;cursor:pointer;margin-top:20px;box-shadow:0 4px 12px rgba(33,150,243,.3);border:none;border-radius:10px;background:linear-gradient(135deg,#2196f3 0,#0d47a1 100%);padding:12px 20px;width:100%;color:#fff;font-weight:600;font-size:.95rem}.share-btn:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(33,150,243,.4);background:linear-gradient(135deg,#2196f3 0,#1565c0 100%)}.share-btn:active{transform:translateY(-1px)}.share-btn svg{width:18px;height:18px}.share-section{display:flex;justify-content:center;margin-top:20px;border-top:1px solid var(--border-color);padding-top:20px}.social-links{display:flex;justify-content:center;gap:1rem;margin-top:1rem}.social-links .social-link{display:flex;justify-content:center;align-items:center;transition:all .3s ease-in-out;border-radius:50%;border:1px solid rgba(255,255,255,.1);background-color:var(--accent-color);width:40px;height:40px;color:#fff;text-decoration:none}.social-link i{display:flex;justify-content:center;align-items:center;width:100%;height:100%}.social-links .social-link:hover{background-color:var(--primary-dark);transform:scale(1.1);color:var(--accent-color)}.section-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:0 1rem}.section-header h2{margin:0;color:var(--text-color);font-weight:700;font-size:1.5rem}.about-content{margin:0 auto;padding:0 1rem;max-width:800px}.about-content h3{margin-top:1.5rem;margin-bottom:.5rem;color:var(--accent-color)}.about-content p{margin-bottom:1rem;font-size:1rem;line-height:1.7}.about-content ul{margin-top:.5rem;margin-bottom:1rem;padding-left:1.5rem}.about-content li{margin-bottom:.5rem}.about-content a[href*="instagram.com"]{color:#e1306c;text-decoration:none;font-weight:500}.about-content a[href*="instagram.com"]:hover{text-decoration:underline}.bold-large{color:var(--accent-color);font-weight:700;font-size:1.3em}@keyframes loading{0%{background-position:200% 0}100%{background-position:-200% 0}}@keyframes slideDown{from{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}@supports (padding:max(0px)){.sidebar{padding-top:max(0px,env(safe-area-inset-top));padding-right:max(0px,env(safe-area-inset-right));padding-left:max(0px,env(safe-area-inset-left))}.main-content{padding-right:max(1rem,env(safe-area-inset-right));padding-bottom:max(1rem,env(safe-area-inset-bottom));padding-left:max(1rem,env(safe-area-inset-left))}}@media (max-width:768px) and (min-width:468px){.card-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}.restaurants-container{grid-template-columns:repeat(2,1fr);gap:1.5rem;padding:1.5rem}.modal-content{width:90%;max-width:700px}.featured-restaurants{margin:2rem 0}.restaurant-ball{width:170px}.card-image{height:180px}.sidebar ul li a{padding:0 12px;font-size:1rem}.sidebar .lang-toggle{padding:6px 10px;font-size:12px}}@media (max-width:768px) and (orientation:landscape){.card-grid{grid-template-columns:repeat(2,1fr)}.modal-content{max-height:85vh}.modal-details{max-height:calc(85vh - 200px)}}@media (max-width:630px){.modal-content{flex-direction:column;margin:.5rem;width:95%;max-height:95vh}.modal-image{min-width:100%;max-width:100%;height:250px}.modal-details{padding:1.2rem;max-height:calc(95vh - 250px);overflow-y:auto}}@media (max-width:600px){.sidebar{display:flex;justify-content:space-between;align-items:center;gap:0;padding:0;height:56px;overflow:hidden}.sidebar>a:first-child{flex:0 0 auto;margin-left:8px}.sidebar img{width:36px;height:auto;margin-left:0}.sidebar ul{display:flex;flex:1;justify-content:space-evenly;align-items:center;margin:0;padding:0 4px;min-width:0;height:100%;list-style:none;overflow:hidden}.sidebar ul li{display:flex;flex:1;justify-content:center;align-items:center;border-left:1px solid rgba(255,255,255,.1);min-width:0;height:100%}.sidebar ul li:first-child{border-left:none}.sidebar ul li a{display:flex;justify-content:center;align-items:center;padding:4px 6px;width:100%;height:100%;overflow:hidden;font-weight:500;font-size:clamp(.75rem, 2.5vw, .95rem);line-height:1.2;text-align:center;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}.sidebar ul li a.active{background-color:var(--accent-color);font-weight:600}.sidebar .lang-toggle{flex:0 0 auto;cursor:pointer;margin-right:8px;margin-left:4px;border:none;border-radius:4px;background:#333;padding:5px 8px;color:#fff;font-weight:600;font-size:clamp(9px, 2vw, 12px);white-space:nowrap}.main-content{margin-top:56px;padding:.8rem}}@media (max-width:480px){body{font-size:15px}.sidebar{height:52px}.sidebar>a:first-child{margin-left:6px}.sidebar img{width:32px}.sidebar ul{padding:0 2px}.sidebar ul li a{padding:3px 4px;font-size:clamp(.75rem, 2.2vw, .85rem)}.sidebar .lang-toggle{margin-right:6px;padding:4px 6px;font-size:clamp(8px, 1.8vw, 11px)}.main-content{margin-top:52px;padding:1rem}.hero{margin-bottom:1.5rem;border-radius:10px;padding:1.5rem 1rem}.hero h1,.hero h2{font-size:1.5rem}.hero p{font-size:.9rem}.card-grid{grid-template-columns:1fr;gap:1.2rem;margin-top:1.2rem}.card{height:350px;max-height:350px}.card-image{height:160px;max-height:160px}.card-content{padding:1rem;height:auto;min-height:140px}.card-title{font-size:1.1rem;-webkit-line-clamp:2}.restaurants-container{grid-template-columns:1fr;gap:1.2rem;padding:1rem}.restaurant-info{padding:.6rem .75rem}.restaurant-info h3{font-size:1rem}.status-badge{font-size:.7rem;padding:3px 8px}.restaurant-address{font-size:.78rem}.card-details-link{font-size:.78rem}.button{padding:.7rem 1.2rem;width:100%;max-width:280px}.share-section{flex-direction:column;gap:.8rem}footer{padding:1rem;font-size:.85rem}.about-content{padding:0 .5rem}.featured-restaurants{margin:1.5rem 0;padding:0 .5rem}.section-header{flex-direction:column;align-items:flex-start;gap:.8rem;padding:0 .5rem}.section-header h2{font-size:1.3rem}.restaurants-horizontal{gap:.8rem;margin:0 -.5rem;padding:.8rem .5rem}.restaurant-ball{width:150px}.restaurant-image{height:100px}.restaurant-name{padding:.6rem;font-size:.85rem}.modal-title{font-size:1.3rem}.modal-ingredients{font-size:.95rem}.modal-restaurant{font-size:.95rem}.lightbox-close,.modal-close{width:42px;height:42px;font-size:1.3rem}#toggleTagsBtn{padding:10px 20px;font-size:.95rem}.filter-form{padding:1rem}.filter-submit{flex-direction:column}.filter-submit button{width:100%}.view-menu-button{padding:8px 16px;font-size:13px}}@media (max-width:400px){.sidebar{height:48px}.sidebar>a:first-child{margin-left:4px}.sidebar img{width:40px}.sidebar ul{padding:0 1px}.sidebar ul li a{padding:2px 3px;font-size:clamp(.65rem, 2vw, .75rem)}.sidebar .lang-toggle{width:20px;margin-right:4px;padding:3px 5px;font-size:clamp(10px, 1.6vw, 15px)}.main-content{margin-top:48px}.card-image{height:140px}.modal-image{height:180px}.hero h1,.hero h2{font-size:1.3rem}.restaurant-ball{width:120px}.restaurant-image{height:80px}.modal-title{font-size:1.1rem}.modal-details{padding:1rem}.card-price{padding:6px 10px;font-size:.85rem}}@media (max-width:360px){.sidebar{height:44px}.sidebar>a:first-child{margin-left:3px}.sidebar img{width:28px}.sidebar ul{padding:0}.sidebar ul li a{padding:2px;font-size:clamp(.6rem, 1.8vw, var(--text-xs));letter-spacing:-.3px}.sidebar .lang-toggle{margin-right:3px;padding:2px 4px;font-size:clamp(8px, 1.4vw, 10px)}.main-content{margin-top:44px;padding:var(--space-2)}.restaurant-ball{width:100px}.restaurant-image{height:60px}.restaurant-name{padding:var(--space-1);font-size:var(--text-xs)}.card{height:340px}.card-image{height:120px}.card-content{padding:var(--space-3)}.card-title{font-size:var(--text-sm)}.modal-image{height:150px}.modal-details{max-height:calc(95vh - 150px)}.button{max-width:100%}#toggleTagsBtn{padding:8px 14px;font-size:var(--text-sm)}}.clear-filters-btn{background:linear-gradient(135deg,#ff9800 0,#ef6c00 100%);color:#fff;border:none;padding:12px 24px;border-radius:10px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px rgba(255,152,0,.3);font-size:1rem;letter-spacing:.5px;margin-left:10px}.clear-filters-btn:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(255,152,0,.4);background:linear-gradient(135deg,#ff9800 0,#e65100 100%)}.filter-restaurants,.filter-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;padding:15px;background:var(--card-bg);border-radius:12px;box-shadow:0 3px 10px rgba(0,0,0,.08);border:1px solid var(--border-color);align-items:flex-start}.filter-restaurants input[type=checkbox],.filter-tags input[type=checkbox]{display:none}.filter-tags label.tag-default{padding:8px 16px;background:linear-gradient(135deg,#f8f9fa 0,#e9ecef 100%);border:2px solid #dee2e6;border-radius:25px;cursor:pointer;font-size:.95rem;font-weight:600;color:#495057;transition:all .3s ease;box-shadow:none;transform:translateY(0)}.filter-tags label.tag-default:hover{background:linear-gradient(135deg,#e9ecef 0,#dee2e6 100%);border-color:#adb5bd;color:#343a40;transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.filter-tags label.tag-top-7{font-size:1.05rem;padding:10px 18px;background:linear-gradient(135deg,gold 0,#ffb347 100%);border:3px solid #ff9800;border-radius:25px;cursor:pointer;font-weight:600;color:#5a3700;transition:all .3s ease;box-shadow:none;transform:translateY(0)}.filter-tags label.tag-top-7:hover{background:linear-gradient(135deg,#ffea00 0,#ffa726 100%);border-color:#e65100;color:#4a2c00;transform:translateY(-3px);box-shadow:0 6px 18px rgba(255,152,0,.35)}.filter-tags label.tag-mid-7{font-size:1rem;padding:9px 16px;background:linear-gradient(135deg,#a8e6cf 0,#7bc5ae 100%);border:2.5px solid #4caf50;border-radius:25px;cursor:pointer;font-weight:600;color:#1b5e20;transition:all .3s ease;box-shadow:none;transform:translateY(0)}.filter-tags label.tag-mid-7:hover{background:linear-gradient(135deg,#81c784 0,#4caf50 100%);border-color:#2e7d32;color:#0d3d0d;transform:translateY(-3px);box-shadow:0 5px 15px rgba(76,175,80,.3)}.filter-tags input[type=checkbox]:checked+label.tag-default,.filter-tags input[type=checkbox]:checked+label.tag-mid-7,.filter-tags input[type=checkbox]:checked+label.tag-top-7{background:linear-gradient(135deg,var(--color-success) 0,var(--color-success-dark) 100%);color:var(--color-white);border-color:#1b5e20;box-shadow:0 6px 15px rgba(76,175,80,.25);transform:translateY(-3px)}.filter-tags input[type=checkbox]:checked+label.tag-default:hover,.filter-tags input[type=checkbox]:checked+label.tag-mid-7:hover,.filter-tags input[type=checkbox]:checked+label.tag-top-7:hover{background:linear-gradient(135deg,#388e3c 0,#1b5e20 100%);border-color:#0d3d0d;transform:translateY(-4px);box-shadow:0 8px 20px rgba(76,175,80,.4)}.filter-restaurants label{padding:8px 16px;background:linear-gradient(135deg,#e3f2fd 0,#bbdefb 100%);border:2px solid #90caf9;border-radius:25px;cursor:pointer;font-size:.95rem;font-weight:600;color:#1565c0;transition:all .3s ease;box-shadow:none;transform:translateY(0)}.filter-restaurants label:hover{background:linear-gradient(135deg,#bbdefb 0,#90caf9 100%);border-color:#1976d2;color:#0d47a1;transform:translateY(-2px);box-shadow:0 4px 12px rgba(33,150,243,.25)}.filter-restaurants input[type=checkbox]:checked+label{background:linear-gradient(135deg,var(--color-info) 0,var(--color-info-dark) 100%);color:var(--color-white);border-color:#1976d2;box-shadow:0 6px 15px rgba(33,150,243,.25);transform:translateY(-3px)}.filter-restaurants input[type=checkbox]:checked+label:hover{background:linear-gradient(135deg,#1976d2 0,var(--color-info-dark) 100%);border-color:var(--color-info-dark);transform:translateY(-4px);box-shadow:0 8px 20px rgba(33,150,243,.4)}.modal-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px;padding-top:15px}.modal-tags .tag{display:inline-block;padding:6px 12px;background:linear-gradient(135deg,#e3f2fd 0,#bbdefb 100%);border-radius:20px;color:#1565c0;text-decoration:none;font-size:.9rem;transition:all .2s ease}.modal-tags .tag:hover{background:linear-gradient(135deg,#bbdefb 0,#90caf9 100%);transform:translateY(-2px)}@media (max-width:768px){.filter-restaurants,.filter-tags{flex-wrap:wrap;overflow-x:auto;padding-bottom:15px}.filter-submit{flex-direction:column;gap:10px}.clear-filters-btn{margin-left:0;width:100%}.filter-restaurants label:hover,.filter-tags label:hover{transform:translateY(-1px)}.filter-restaurants input[type=checkbox]:checked+label:hover,.filter-tags input[type=checkbox]:checked+label:hover{transform:translateY(-2px)}}@media (-webkit-min-device-pixel-ratio:2) and (max-width:768px){.card-image,.card-image img,.modal-image img,.restaurant-image{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}}@media (hover:none) and (pointer:coarse){.card:hover{transform:none}.restaurant-ball:hover{transform:none}.button:hover,.share-btn:hover,.sidebar ul li a:hover,.view-menu-button:hover{transform:none}.card:hover .card-image img{transform:none}.tag:hover{transform:none}.sidebar ul li a{min-height:40px}#toggleTagsBtn,.button,.share-btn,.view-menu-button{min-height:44px}.lightbox-close,.modal-close{min-width:44px;min-height:44px}.slider-btn{min-width:44px;min-height:44px}}.toast-container{position:fixed;top:90px;right:20px;z-index:var(--z-toast);display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast{padding:14px 20px;border-radius:var(--radius);color:#fff;font-weight:500;font-size:.95rem;opacity:0;transform:translateX(100%);transition:all .3s ease;max-width:320px;box-shadow:0 4px 12px rgba(0,0,0,.4);pointer-events:auto;display:flex;align-items:center;gap:10px}.toast.show{opacity:1;transform:translateX(0)}.toast.success{background:linear-gradient(135deg,var(--color-success),var(--color-success-dark))}.toast.error{background:linear-gradient(135deg,var(--color-error),var(--color-error-dark))}.toast.info{background:linear-gradient(135deg,var(--accent-color),var(--primary-color))}.toast-icon{width:20px;height:20px;flex-shrink:0}@media (max-width:480px){.toast-container{top:70px;right:10px;left:10px}.toast{max-width:100%}}.back-to-top{position:fixed;bottom:30px;right:30px;width:50px;height:50px;border-radius:50%;background:var(--accent-color);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transform:translateY(20px);transition:all .3s ease;z-index:var(--z-lightbox);box-shadow:0 4px 15px rgba(0,0,0,.3)}.back-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top.visible:hover{background:var(--primary-color);transform:translateY(-3px);box-shadow:0 6px 20px rgba(0,0,0,.4)}.back-to-top svg{width:24px;height:24px}@media (max-width:480px){.back-to-top{bottom:20px;right:20px;width:44px;height:44px}.back-to-top svg{width:20px;height:20px}}.search-container{display:flex;align-items:center;gap:.75rem;margin:1.5rem auto 2rem;max-width:750px;padding:0 1rem}.search-input-wrapper{position:relative;display:flex;align-items:center;flex:1;min-width:0}.search-icon{position:absolute;left:18px;color:var(--text-color);opacity:.5;pointer-events:none;width:20px;height:20px}.search-input{width:100%;padding:14px 50px 14px 50px;border:2px solid var(--border-color);border-radius:50px;background:var(--card-bg);color:var(--text-color);font-size:1rem;font-family:var(--font-main);transition:all .3s ease}.search-input::placeholder{color:var(--text-color);opacity:.5}.search-input:focus{outline:0;border-color:var(--accent-color);box-shadow:0 0 0 3px rgba(205,133,63,.15)}.search-clear{position:absolute;right:14px;width:28px;height:28px;border:none;background:rgba(255,255,255,.1);color:var(--text-color);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:all .2s ease;font-size:18px;line-height:1}.search-clear.visible{opacity:1;visibility:visible}.search-clear:hover{background:rgba(255,255,255,.2)}.no-results{text-align:center;padding:3rem 1rem;color:var(--text-color);opacity:.7}.no-results-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.no-results-text{font-size:1.1rem}@media (max-width:480px){.search-container{flex-direction:column;margin:1rem auto 1.5rem}.search-container #toggleTagsBtn{width:100%;text-align:center;padding:12px 20px;font-size:.95rem}.search-container #sort{width:100%;padding:12px 40px 12px 16px;font-size:.95rem}.search-input{padding:12px 44px 12px 44px;font-size:.95rem}.search-icon{left:14px;width:18px;height:18px}.search-clear{right:10px;width:26px;height:26px}}:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}#sort:focus-visible,.search-input:focus-visible{outline:0;box-shadow:0 0 0 3px rgba(205,133,63,.3);border-color:var(--accent-color)}.card:focus-visible,.restaurant-ball:focus-visible,.restaurant-card:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px;transform:translateY(-3px)}.tag:focus-visible{outline:2px solid var(--accent-color);outline-offset:1px}.lightbox-close:focus-visible,.modal-close:focus-visible,.slider-btn:focus-visible{outline:2px solid var(--color-white);outline-offset:2px}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:0s!important;animation-iteration-count:1!important;transition-duration:0s!important;scroll-behavior:auto!important}}@media print{#toggleTagsBtn,.back-to-top,.filter-form,.image-slider .slider-dots,.image-slider .slider-nav,.lang-toggle,.search-container,.share-btn,.share-section,.sidebar,.toast-container{display:none!important}body{background-color:#fff;color:#000}.main-content{margin-top:0;padding:0}.hero{background:#f5f5f5;color:#000;box-shadow:none}.hero h1,.hero h2{color:#000}.card,.restaurant-card{break-inside:avoid;box-shadow:none;border:1px solid #ccc;background:#fff}.card-title,.restaurant-info h3{color:#000}a{color:#000;text-decoration:underline}}