:root{--ink:#172033;--muted:#697386;--accent:#3157d5;--line:#e8ebf2;--page-bg:#f7f8fb;--menu-font:Inter,system-ui,sans-serif;--title-size:30px;--category-size:22px;--item-size:17px;--desc-size:14px;--price-size:16px;--menu-weight:600;--banner-height:190px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--menu-font);background:var(--page-bg);color:var(--ink)}.menu-app{max-width:720px;margin:auto;background:var(--page-bg);min-height:100vh;overflow:hidden}.restaurant-head{height:var(--banner-height);padding:30px 24px;display:flex;align-items:flex-end;background:linear-gradient(135deg,#172033,#3157d5);color:#fff;background-size:cover;background-position:center;position:relative;overflow:hidden}.restaurant-head.has-cover:before{content:"";position:absolute;inset:0}.head-content{position:relative;z-index:1;display:flex;align-items:center;gap:15px;width:100%}.restaurant-head h1{margin:0;font-size:var(--title-size);line-height:1.05;font-weight:800;letter-spacing:-.025em}.restaurant-head p{margin:7px 0 0;opacity:.88;font-size:14px}.restaurant-logo{width:68px;height:68px;object-fit:cover;background:#fff;border:3px solid rgba(255,255,255,.95);flex:none}.logo-square{border-radius:2px}.logo-rounded{border-radius:16px}.logo-circle{border-radius:50%}.cat-tabs{position:sticky;top:0;z-index:5;display:flex;gap:9px;overflow:auto;padding:13px 18px;background:color-mix(in srgb,var(--page-bg) 94%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid color-mix(in srgb,var(--ink) 10%,transparent);scrollbar-width:none}.cat-tabs a{white-space:nowrap;text-decoration:none;color:var(--ink);padding:8px 13px;font-weight:700;font-size:13px}.cats-pills .cat-tabs a{background:color-mix(in srgb,var(--ink) 7%,var(--page-bg));border-radius:999px}.cats-underline .cat-tabs a{border-bottom:2px solid transparent}.cats-underline .cat-tabs a:active{border-color:var(--accent);color:var(--accent)}.cats-minimal .cat-tabs{gap:18px}.cats-minimal .cat-tabs a{padding-left:0;padding-right:0}.cats-dark .cat-tabs a{background:var(--ink);color:var(--page-bg);border-radius:8px}.cat-tabs a:active{color:var(--accent)}main{padding:8px 18px 28px}section{scroll-margin-top:70px}section h2{font-size:var(--category-size);margin:29px 0 13px;font-weight:800;letter-spacing:-.015em}.item-list{display:grid;gap:13px}.menu-item{display:flex;overflow:hidden;background:color-mix(in srgb,var(--page-bg) 20%,white);min-height:126px}.menu-item.card-rounded{border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);border-radius:20px}.menu-item.card-bordered{border:1px solid color-mix(in srgb,var(--ink) 22%,transparent);border-radius:4px}.menu-item.card-flat{border:0;border-bottom:1px solid color-mix(in srgb,var(--ink) 12%,transparent);border-radius:0;background:transparent}.menu-item.card-shadow{border:0;border-radius:20px;box-shadow:0 12px 30px rgba(20,35,70,.12)}.item-copy{padding:17px;flex:1;min-width:0}.item-copy h3{margin:5px 0;font-size:var(--item-size);font-weight:var(--menu-weight);line-height:1.25}.item-copy p{margin:0;color:color-mix(in srgb,var(--ink) 65%,transparent);font-size:var(--desc-size);line-height:1.5}.price{display:block;margin-top:13px;color:var(--accent);font-size:var(--price-size);font-weight:800}.badges{display:flex;gap:5px;flex-wrap:wrap}.badges span{font-size:10px;font-weight:800;background:color-mix(in srgb,var(--accent) 11%,var(--page-bg));color:var(--accent);padding:4px 7px;border-radius:999px}.item-image{width:132px;min-height:132px;flex:none;overflow:hidden}.item-image img{width:100%;height:100%;object-fit:cover;display:block}.layout-image-right .item-image{order:2}.layout-image-left .item-image{order:-1}.layout-image-top .menu-item{display:block}.layout-image-top .item-image{width:100%;height:auto;aspect-ratio:16/9;order:-1}.layout-image-top .item-copy{padding:19px}.layout-compact .menu-item{min-height:86px}.layout-compact .item-image{width:88px;min-height:88px}.layout-compact .item-copy{padding:12px 14px}.layout-compact .item-copy p{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.layout-no-image .item-image{display:none}.image-square .item-image{aspect-ratio:1/1}.image-rounded .item-image img{border-radius:14px;margin:8px;width:calc(100% - 16px);height:calc(100% - 16px)}.image-soft .item-image img{border-radius:7px;margin:8px;width:calc(100% - 16px);height:calc(100% - 16px)}.image-circle .item-image img{border-radius:50%;margin:12px;width:calc(100% - 24px);height:calc(100% - 24px);aspect-ratio:1/1}.image-square .item-image img{border-radius:0}.ratio-landscape.layout-image-top .item-image{aspect-ratio:4/3}.ratio-wide.layout-image-top .item-image{aspect-ratio:16/9}.sold{opacity:.5;filter:saturate(.4)}.powered{text-align:center;color:color-mix(in srgb,var(--ink) 48%,transparent);font-size:12px;padding:36px}.align-center .restaurant-head,.align-center section h2{text-align:center}.align-center .head-content{justify-content:center}.align-center .item-copy{text-align:center}.align-center .badges{justify-content:center}.spacing-compact .item-list{gap:6px}.spacing-compact .item-copy{padding:11px}.spacing-compact section h2{margin:19px 0 8px}.spacing-spacious .item-list{gap:22px}.spacing-spacious .item-copy{padding:23px}.spacing-spacious section h2{margin:38px 0 17px}
/* Header layouts */.banner-minimal .restaurant-head{height:auto;min-height:128px;background:var(--page-bg)!important;color:var(--ink);border-bottom:1px solid color-mix(in srgb,var(--ink) 10%,transparent)}.banner-minimal .restaurant-head.has-cover{background-image:none!important}.banner-minimal .restaurant-head.has-cover:before{display:none}.banner-split .restaurant-head{align-items:center}.banner-split .head-content{background:color-mix(in srgb,var(--page-bg) 92%,transparent);color:var(--ink);padding:15px;border-radius:18px;backdrop-filter:blur(8px)}.banner-logo .restaurant-head{height:auto;min-height:180px;align-items:center;justify-content:center;text-align:center;background:var(--page-bg)!important;color:var(--ink)}.banner-logo .restaurant-head.has-cover{background-image:none!important}.banner-logo .restaurant-head.has-cover:before{display:none}.banner-logo .head-content{flex-direction:column;justify-content:center}.banner-logo .restaurant-logo{width:82px;height:82px;border-color:color-mix(in srgb,var(--ink) 10%,transparent)}
/* Premium themes */.theme-modern .restaurant-head{background:linear-gradient(135deg,#172033,#3157d5)}.theme-modern .menu-item{transition:transform .18s ease}.theme-minimal .restaurant-head{background:#fff;color:var(--ink)}.theme-minimal .menu-app{background:#fff}.theme-minimal section h2{font-weight:600}.theme-minimal .price{color:var(--ink)}.theme-cafe .restaurant-head{background:linear-gradient(135deg,#5b4031,#b8753d)}.theme-cafe .menu-app{background:var(--page-bg)}.theme-cafe section h2{font-family:Georgia,serif;color:#5a3f31}.theme-elegant .restaurant-head{background:linear-gradient(135deg,#24211d,#655849)}.theme-elegant .restaurant-head h1,.theme-elegant section h2{font-family:Georgia,serif;font-weight:600}.theme-elegant section h2{text-transform:uppercase;letter-spacing:.12em;font-size:calc(var(--category-size) * .8)}.theme-elegant .price{color:var(--accent)}.theme-street .restaurant-head{background:linear-gradient(135deg,#111,#f04a24)}.theme-street .restaurant-head h1,.theme-street section h2{text-transform:uppercase;letter-spacing:-.035em}.theme-street .menu-item{border:2px solid var(--ink);box-shadow:5px 5px 0 var(--ink)}.theme-street .badges span{border-radius:4px}.theme-bistro .restaurant-head{background:linear-gradient(135deg,#24372e,#435d4d)}.theme-bistro .restaurant-head h1,.theme-bistro section h2{font-family:Georgia,serif}.theme-bistro section h2{text-align:center}.theme-bistro section h2:after{content:"";display:block;width:38px;height:1px;background:var(--accent);margin:10px auto 0}.theme-photo .restaurant-head{background:linear-gradient(135deg,#25395f,#e2543d)}.theme-photo .layout-image-top .menu-item{background:#fff}.theme-photo .layout-image-top .item-image{aspect-ratio:16/9}.theme-dark{background:#090a0c}.theme-dark .menu-app{background:var(--page-bg)}.theme-dark .restaurant-head{background:linear-gradient(135deg,#08090b,#2c3038)}.theme-dark .menu-item{background:#191b20;border-color:#292c33}.theme-dark .cat-tabs{border-color:#292c33}.theme-dark .cat-tabs a{color:var(--ink)}.theme-dark .item-copy p{color:#a7abb4}.theme-dark .powered{color:#777b85}@media(max-width:520px){.item-image{width:112px;min-height:112px}.item-copy{padding:14px}.restaurant-logo{width:58px;height:58px}.layout-image-top .item-image{width:100%;min-height:0}}