@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Lato:wght@300;400;700&family=Montserrat:wght@300;400;500;600;700&family=Nunito+Sans:wght@300;400;500;600;700&family=Open+Sans:wght@300;400;500;600;700&family=Roboto:wght@300;400;500;700&family=Source+Sans+3:wght@300;400;500;600;700&display=swap');
:root{--ink:#111214;--primary:#111214;--muted:#7e8390;--line:#e8e9ed;--soft:#f8f8f9;--page:#fff;--card:#fff;--radius:18px;--font:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--body-weight:400;--title-weight:600;--price-weight:700}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--page);color:var(--ink);font-family:var(--font);font-weight:var(--body-weight);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.hidden{display:none!important}.muted-copy{color:#8a909b;font-size:13px}.dot{opacity:.45}
.menu-shell{width:min(100%,560px);margin:0 auto;min-height:100vh;padding:0 24px 34px;background:var(--page)}
.topbar{position:relative;padding:48px 54px 22px;display:flex;justify-content:center;align-items:flex-start}.brand{text-align:center;letter-spacing:.14em}.brand .the{font-size:11px;letter-spacing:.42em;margin-left:.42em}.brand .lemon{font-size:37px;font-weight:500;letter-spacing:.21em;line-height:1.08;margin:5px 0}.brand .restaurant{font-size:13px;letter-spacing:.30em;margin-left:.30em}.brand-logo{display:block;max-width:180px;max-height:84px;object-fit:contain;margin:0 auto}.round-icon{width:42px;height:42px;border:1.7px solid var(--ink);border-radius:50%;background:var(--page);display:grid;place-items:center;padding:0}.info-btn{position:absolute;right:0;top:68px}.back-btn{position:absolute;left:0;top:68px;border:0;background:transparent;width:38px;height:38px;padding:0}.round-icon svg,.back-btn svg{width:23px;height:23px;stroke:var(--ink);fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.lang-row{display:flex;justify-content:center;gap:6px;margin:0 0 5px}.lang-chip{font-size:10px;padding:5px 8px;border-radius:999px;color:#8e939e}.lang-chip.active{background:#111;color:#fff}
.category-strip{display:flex;gap:4px;overflow-x:auto;padding:18px 0 11px;scrollbar-width:none}.category-strip::-webkit-scrollbar{display:none}.cat-item{flex:0 0 72px;min-height:82px;border:0;background:transparent;border-radius:17px;padding:8px 4px 5px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:#171719}.cat-item.active{background:#f7f7f8;box-shadow:inset 0 0 0 1px #ededf0}.cat-item svg{width:31px;height:31px;stroke:var(--ink);fill:none;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}.cat-item span{font-size:11.5px;white-space:nowrap}
.search-wrap{position:relative;margin:17px 0 24px}.search-wrap>svg{position:absolute;left:18px;top:50%;transform:translateY(-50%);width:24px;height:24px;stroke:#9398a4;fill:none;stroke-width:1.8}.search{width:100%;height:57px;border:1px solid #dedfe4;border-radius:17px;padding:0 18px 0 55px;font-size:15px;color:#222;outline:none;background:var(--card);transition:.2s}.search::placeholder{color:#b0b3bb}.search:focus{border-color:#aeb1b8;box-shadow:0 0 0 3px #f4f4f6}
.product-list{display:flex;flex-direction:column;gap:12px}.product-card{border:1px solid #e6e7ea;border-radius:18px;min-height:156px;padding:17px 15px 17px 20px;display:grid;grid-template-columns:minmax(0,1fr) 42%;gap:14px;align-items:center;background:var(--card);box-shadow:0 7px 20px rgba(20,24,34,.035);transition:.18s}.product-card:hover{box-shadow:0 10px 30px rgba(20,24,34,.07)}.product-card:active{transform:scale(.992)}.product-copy{min-width:0}.product-badges{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:7px}.product-badges span{font-size:8px;text-transform:uppercase;letter-spacing:.06em;padding:4px 6px;border-radius:999px;background:#f3f4f6;color:#666c76;font-weight:600}.product-name{font-size:18px;line-height:1.18;font-weight:var(--title-weight);margin:0 0 9px;letter-spacing:-.02em}.product-desc{font-size:13.2px;line-height:1.55;color:#7f8490;margin:0 0 11px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.meta{display:flex;align-items:center;gap:6px;color:#8a8f9b;font-size:12.5px;margin-bottom:8px;flex-wrap:wrap}.meta svg{width:15px;height:15px;stroke:#6f7582;fill:none;stroke-width:1.8}.price{font-size:19px;font-weight:var(--price-weight);letter-spacing:-.02em}.product-img{width:100%;height:118px;border-radius:13px;object-fit:cover;background:#f4f4f4}.empty-state{border:1px dashed #dfe2e6;border-radius:18px;padding:30px;text-align:center;color:#7e8490}.empty-state h1{color:#111;font-size:22px}
.footer{padding:32px 0 4px;text-align:center;color:#a1a5ae;font-size:12px}.footer strong{color:#747985;font-weight:650}.update-date{margin:18px 4px 0;display:flex;align-items:center;justify-content:center;gap:7px;color:#9da2ad;font-size:12px}.update-date svg{width:15px;height:15px;stroke:#9da2ad;fill:none;stroke-width:1.7}.category-heading{text-align:center;font-size:31px;font-weight:var(--title-weight);margin:5px 0 8px;letter-spacing:-.03em}.category-page .topbar{padding-bottom:8px}.category-page .category-strip{padding-top:10px}
.detail .topbar{padding-bottom:18px}.hero{width:100%;aspect-ratio:1.5/1;border-radius:18px;object-fit:cover;background:#f3f3f3}.detail-copy{padding:22px 10px 0}.detail-badges{margin-bottom:10px}.detail-title{font-size:28px;line-height:1.2;letter-spacing:-.035em;margin:0 0 10px;font-weight:700}.detail-desc{font-size:14px;line-height:1.6;color:#757b86;margin:0 0 17px}.detail-price{font-size:25px;font-weight:var(--price-weight);margin:0 0 14px}.detail-meta{font-size:14px}.section{border-top:1px solid #ececef;padding:20px 0 18px}.section h3{font-size:17px;margin:0 0 16px}.section h3 small{font-weight:400;color:#9ba0aa}.ingredients{display:flex;gap:14px;overflow-x:auto;scrollbar-width:none;padding-bottom:3px}.ingredient{display:flex;align-items:center;gap:7px;white-space:nowrap;font-size:12.5px}.ingredient .mini-ico{width:27px;height:27px;border:1px solid #ececef;border-radius:8px;display:grid;place-items:center;font-size:13px}.allergens{display:flex;gap:13px;overflow-x:auto;scrollbar-width:none;padding-bottom:4px}.allergen{text-align:center;min-width:56px}.allergen .circle{width:42px;height:42px;border-radius:50%;background:#222;color:#fff;display:grid;place-items:center;margin:0 auto 6px}.allergen .circle svg{width:22px;height:22px;stroke:#fff;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.allergen span:last-child{font-size:9px;font-weight:600}.nutrition{border:1px solid #ececef;border-radius:14px;display:grid;grid-template-columns:repeat(5,1fr);overflow:hidden}.nutri{padding:12px 7px;text-align:center;border-right:1px solid #ececef}.nutri:last-child{border-right:0}.nutri small{display:block;color:#8d929e;font-size:10px;margin-bottom:7px}.nutri strong{font-size:13px;font-weight:600}.detail .footer{padding-top:18px}
.modal-bg{position:fixed;inset:0;background:rgba(15,18,24,.28);backdrop-filter:blur(5px);z-index:50;display:flex;align-items:flex-end;justify-content:center;padding:16px}.modal{width:min(100%,520px);background:#fff;border-radius:24px;padding:28px 24px 24px;box-shadow:0 22px 70px rgba(0,0,0,.20);position:relative}.modal .close{position:absolute;right:18px;top:16px;width:34px;height:34px;border-radius:50%;border:1px solid #e5e6e9;background:#fff}.modal-brand{text-align:center;margin:6px 0 22px}.modal-brand .brand .lemon{font-size:28px}.modal-brand .brand-logo{max-width:150px;max-height:70px}.modal-list{border-top:1px solid #ededf0}.modal-row{width:100%;display:flex;align-items:center;gap:12px;padding:15px 4px;border:0;border-bottom:1px solid #ededf0;font-size:14px;background:transparent;text-align:left;color:#222}.modal-row svg{width:20px;height:20px;stroke:#111;fill:none;stroke-width:1.7;flex:0 0 auto}.modal-row small{display:block;color:#9ca1ab;font-size:10px;margin-top:3px}.review-link{display:block;margin-top:18px;background:#111;color:#fff;text-align:center;border-radius:12px;padding:12px;font-size:12px;font-weight:600}
@media(min-width:900px){body:before{content:'';position:fixed;inset:0;background:linear-gradient(180deg,#fbfbfc,#f4f5f7);z-index:-1}.menu-shell{box-shadow:0 0 60px rgba(20,30,40,.055);min-height:100vh}}
@media(max-width:420px){.menu-shell{padding:0 16px 28px}.topbar{padding-top:38px}.brand .lemon{font-size:31px}.brand-logo{max-width:160px;max-height:72px}.info-btn,.back-btn{top:57px}.cat-item{flex-basis:68px}.product-card{grid-template-columns:minmax(0,1fr) 39%;padding-left:16px;min-height:145px}.product-img{height:105px}.product-name{font-size:16px}.product-desc{font-size:12.2px}.nutrition{grid-template-columns:repeat(3,1fr)}.nutri:nth-child(3){border-right:0}.nutri:nth-child(n+4){border-top:1px solid #ececef}.category-heading{font-size:27px}.detail-title{font-size:26px}.hero{aspect-ratio:1.38/1}}

/* v1.1 Premium micro-motion — visual design unchanged */
body{overflow-x:hidden}.menu-shell{opacity:0;transform:translateY(8px);transition:opacity .34s cubic-bezier(.22,1,.36,1),transform .34s cubic-bezier(.22,1,.36,1)}body.menu-ready .menu-shell{opacity:1;transform:none}body.page-leaving .menu-shell{opacity:0;transform:translateX(-8px);transition-duration:.14s}
.topbar .brand,.topbar .info-btn,.topbar .back-btn{opacity:0;transform:translateY(8px);transition:opacity .36s cubic-bezier(.22,1,.36,1),transform .36s cubic-bezier(.22,1,.36,1)}body.menu-ready .topbar .brand,body.menu-ready .topbar .info-btn,body.menu-ready .topbar .back-btn{opacity:1;transform:none}.topbar .info-btn{transition-delay:.05s}.topbar .back-btn{transition-delay:.04s}
.cat-item,.product-card,.search-wrap,.category-heading,.hero,.detail-copy,.section,.update-date,.footer{opacity:0;transform:translateY(7px);transition:opacity .32s cubic-bezier(.22,1,.36,1),transform .32s cubic-bezier(.22,1,.36,1)}body.menu-ready .cat-item,body.menu-ready .product-card,body.menu-ready .search-wrap,body.menu-ready .category-heading,body.menu-ready .hero,body.menu-ready .detail-copy,body.menu-ready .section,body.menu-ready .update-date,body.menu-ready .footer{opacity:1;transform:none}.cat-item:nth-child(2){transition-delay:.025s}.cat-item:nth-child(3){transition-delay:.05s}.cat-item:nth-child(4){transition-delay:.075s}.cat-item:nth-child(5){transition-delay:.1s}.cat-item:nth-child(6){transition-delay:.125s}.cat-item:nth-child(7){transition-delay:.15s}.cat-item:nth-child(8){transition-delay:.175s}.product-card:nth-child(2){transition-delay:.035s}.product-card:nth-child(3){transition-delay:.07s}.product-card:nth-child(4){transition-delay:.105s}.product-card:nth-child(5){transition-delay:.14s}.product-card:nth-child(6){transition-delay:.175s}.product-card:nth-child(7){transition-delay:.21s}.product-card:nth-child(8){transition-delay:.245s}.search-wrap{transition-delay:.08s}.hero{transform:scale(1.018);transition-duration:.46s}.detail-copy{transition-delay:.06s}.section:nth-of-type(2){transition-delay:.08s}.section:nth-of-type(3){transition-delay:.12s}.section:nth-of-type(4){transition-delay:.16s}
.product-card.search-out{opacity:0!important;transform:translateY(4px) scale(.99)!important;transition-duration:.13s!important}
.product-img,.hero{background:#f4f4f5;position:relative}.product-img.is-loading,.hero.is-loading{filter:saturate(.9);opacity:.72}.product-img.image-ready,.hero.image-ready{opacity:1;filter:none;transition:opacity .3s ease,filter .3s ease}
.modal-bg{display:flex;opacity:0;pointer-events:none;transition:opacity .22s ease}.modal-bg.is-open{opacity:1;pointer-events:auto}.modal-bg .modal{transform:translateY(28px) scale(.99);opacity:0;transition:transform .3s cubic-bezier(.22,1,.36,1),opacity .24s ease}.modal-bg.is-open .modal{transform:none;opacity:1}
.round-icon,.back-btn,.cat-item,.product-card,.review-link,.modal-row{will-change:transform}.round-icon:active,.cat-item:active,.review-link:active,.modal-row:active{transform:scale(.97)}
.search{transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.search:focus{transform:translateY(-1px)}
@media(prefers-reduced-motion:reduce){.menu-shell,.topbar .brand,.topbar .info-btn,.topbar .back-btn,.cat-item,.product-card,.search-wrap,.category-heading,.hero,.detail-copy,.section,.update-date,.footer,.modal-bg,.modal-bg .modal,.search{transition:none!important;transform:none!important;opacity:1!important}.modal-bg{opacity:1}.modal-bg.hidden{display:none!important}}

/* v1.4 — Logo scale + working corporate theme variables */
.menu-shell .brand-logo{max-width:min(var(--logo-width,360px),82vw);max-height:var(--logo-height,168px);width:auto;height:auto;object-fit:contain}
.topbar:has(.brand-logo){padding-top:34px;padding-bottom:20px;min-height:calc(var(--logo-height,168px) + 54px)}
.topbar:has(.brand-logo) .info-btn,.topbar:has(.brand-logo) .back-btn{top:54px}
.round-icon{border-color:var(--primary);color:var(--primary)}
.round-icon svg,.back-btn svg{stroke:var(--primary)}
.lang-chip.active{background:var(--primary);color:#fff}
.cat-item.active{box-shadow:inset 0 0 0 1.5px var(--primary);background:var(--card)}
.cat-item svg{stroke:var(--primary)}
.search:focus{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 10%,transparent)}
.price,.detail-price{color:var(--primary)}
.product-badges span{color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 14%,#eceef1);background:color-mix(in srgb,var(--accent) 5%,var(--card))}
.product-badges .availability-front.unavailable{color:#a45b00;border-color:#f1d9b5;background:#fff8ec}
.product-badges .availability-front.seasonal{color:#386693;border-color:#d6e4f1;background:#f4f8fc}
.product-badges .availability-front.coming-soon{color:#75559b;border-color:#e3d8ef;background:#faf7fd}
.review-link{background:var(--primary)}
.allergen .circle{background:var(--primary)}
.update-date svg{stroke:var(--primary)}
.modal-brand .brand-logo{max-width:min(var(--logo-width,360px),75vw);max-height:min(var(--logo-height,168px),150px)}

@media(max-width:420px){
  .menu-shell .brand-logo{max-width:min(var(--logo-width,360px),78vw);max-height:var(--logo-height,168px)}
  .topbar:has(.brand-logo){padding-top:28px;min-height:calc(var(--logo-height,168px) + 42px)}
  .topbar:has(.brand-logo) .info-btn,.topbar:has(.brand-logo) .back-btn{top:44px}
}


/* v1.5 — Light / Dark / Auto menu themes */
html{color-scheme:light;transition:background-color .28s ease,color .28s ease}
html[data-theme="dark"]{color-scheme:dark;--page:#0e0f11!important;--card:#17191c!important;--ink:#f6f7f8!important;--muted:#a8adb7!important;--line:#2a2d32!important;--soft:#141619!important;--primary:color-mix(in srgb,var(--brand-primary) 45%,#fff)!important;--accent:color-mix(in srgb,var(--brand-accent) 48%,#fff)!important}
@media(prefers-color-scheme:dark){html[data-theme="auto"]{color-scheme:dark;--page:#0e0f11!important;--card:#17191c!important;--ink:#f6f7f8!important;--muted:#a8adb7!important;--line:#2a2d32!important;--soft:#141619!important;--primary:color-mix(in srgb,var(--brand-primary) 45%,#fff)!important;--accent:color-mix(in srgb,var(--brand-accent) 48%,#fff)!important}}
html[data-theme="dark"] body,html[data-theme="dark"] .menu-shell,html[data-theme="dark"] .round-icon{background:var(--page);color:var(--ink)}
html[data-theme="dark"] .search,html[data-theme="dark"] .product-card,html[data-theme="dark"] .modal,html[data-theme="dark"] .modal .close{background:var(--card);color:var(--ink)}
@media(prefers-color-scheme:dark){html[data-theme="auto"] body,html[data-theme="auto"] .menu-shell,html[data-theme="auto"] .round-icon{background:var(--page);color:var(--ink)}html[data-theme="auto"] .search,html[data-theme="auto"] .product-card,html[data-theme="auto"] .modal,html[data-theme="auto"] .modal .close{background:var(--card);color:var(--ink)}}
html[data-theme="dark"] .product-card,html[data-theme="dark"] .search,html[data-theme="dark"] .nutrition,html[data-theme="dark"] .section,html[data-theme="dark"] .modal-list,html[data-theme="dark"] .modal-row,html[data-theme="dark"] .ingredient .mini-ico{border-color:#2a2d32}
@media(prefers-color-scheme:dark){html[data-theme="auto"] .product-card,html[data-theme="auto"] .search,html[data-theme="auto"] .nutrition,html[data-theme="auto"] .section,html[data-theme="auto"] .modal-list,html[data-theme="auto"] .modal-row,html[data-theme="auto"] .ingredient .mini-ico{border-color:#2a2d32}}
html[data-theme="dark"] .product-desc,html[data-theme="dark"] .detail-desc,html[data-theme="dark"] .meta,html[data-theme="dark"] .muted-copy,html[data-theme="dark"] .update-date,html[data-theme="dark"] .footer,html[data-theme="dark"] .section h3 small{color:#a8adb7}
@media(prefers-color-scheme:dark){html[data-theme="auto"] .product-desc,html[data-theme="auto"] .detail-desc,html[data-theme="auto"] .meta,html[data-theme="auto"] .muted-copy,html[data-theme="auto"] .update-date,html[data-theme="auto"] .footer,html[data-theme="auto"] .section h3 small{color:#a8adb7}}
html[data-theme="dark"] .cat-item{color:#f1f2f3}html[data-theme="dark"] .cat-item.active{background:#1d2024}html[data-theme="dark"] .search{color:#f6f7f8}html[data-theme="dark"] .search::placeholder{color:#747b86}
@media(prefers-color-scheme:dark){html[data-theme="auto"] .cat-item{color:#f1f2f3}html[data-theme="auto"] .cat-item.active{background:#1d2024}html[data-theme="auto"] .search{color:#f6f7f8}html[data-theme="auto"] .search::placeholder{color:#747b86}}
html[data-theme="dark"] .round-icon,html[data-theme="dark"] .back-btn,html[data-theme="dark"] .cat-item{color:var(--primary)}html[data-theme="dark"] .allergen .circle{background:#f2f3f4;color:#111}html[data-theme="dark"] .allergen .circle svg{stroke:#111}
@media(prefers-color-scheme:dark){html[data-theme="auto"] .round-icon,html[data-theme="auto"] .back-btn,html[data-theme="auto"] .cat-item{color:var(--primary)}html[data-theme="auto"] .allergen .circle{background:#f2f3f4;color:#111}html[data-theme="auto"] .allergen .circle svg{stroke:#111}}
html[data-theme="dark"] .brand:has(.brand-logo),html[data-theme="dark"] .modal-brand:has(.brand-logo){border-radius:16px}
@media(prefers-color-scheme:dark){html[data-theme="auto"] .brand:has(.brand-logo),html[data-theme="auto"] .modal-brand:has(.brand-logo){border-radius:16px}}
body,.menu-shell,.product-card,.search,.round-icon,.modal,.cat-item,.section,.nutrition,.modal-row{transition:background-color .28s ease,color .28s ease,border-color .28s ease,box-shadow .28s ease}
@media(min-width:900px){html[data-theme="dark"] body:before{background:linear-gradient(180deg,#0b0c0e,#121418)}}
@media(min-width:900px) and (prefers-color-scheme:dark){html[data-theme="auto"] body:before{background:linear-gradient(180deg,#0b0c0e,#121418)}}

html[data-theme="dark"] .nutri{border-color:#2a2d32}html[data-theme="dark"] .empty-state h1{color:var(--ink)}html[data-theme="dark"] .modal-row svg{stroke:var(--ink)}
@media(prefers-color-scheme:dark){html[data-theme="auto"] .nutri{border-color:#2a2d32}html[data-theme="auto"] .empty-state h1{color:var(--ink)}html[data-theme="auto"] .modal-row svg{stroke:var(--ink)}}
