:root{--bg: #ffffff;--surface: #f6f6f4;--text: #16150f;--muted: #6c6a60;--line: #e4e2da;--brand: #0f5132;--radius: 12px;--ease-out: cubic-bezier(.23, 1, .32, 1)}@media(prefers-color-scheme:dark){:root{--bg: #14140f;--surface: #1e1e18;--text: #f4f3ec;--muted: #a3a096;--line: #2c2b23;--brand: #8fd6ac}}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:152px}@media(min-width:700px){html{scroll-padding-top:84px}}body{margin:0;background:var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.45}.page{max-width:1180px;margin:0 auto;padding:0 16px 72px}@media(min-width:700px){.page{padding-inline:28px}.header{padding:28px 0 14px}.header-text h1{font-size:1.5rem}}.header{display:flex;align-items:center;gap:12px;padding:20px 0 12px}.logo{border-radius:10px;object-fit:cover;flex:none}.header-text h1{margin:0;font-size:1.25rem;font-weight:600;letter-spacing:-.015em}.table{margin:2px 0 0;color:var(--muted);font-size:.875rem}.search{position:sticky;top:0;z-index:3;display:flex;align-items:center;gap:9px;margin:0 -16px;padding:8px 16px;background:var(--bg)}@media(min-width:700px){.search{margin-inline:-28px;padding-inline:28px}}.search-icon{flex:none;width:17px;height:17px;color:var(--muted)}.search-input{flex:1;min-width:0;min-height:44px;border:0;background:transparent;color:var(--text);font:inherit;font-size:.9375rem;outline:none}.search-input::placeholder{color:var(--muted)}.search-input::-webkit-search-cancel-button{display:none}.search-clear{flex:none;width:30px;height:30px;border:0;border-radius:999px;background:var(--surface);color:var(--muted);font-size:1.05rem;line-height:1;cursor:pointer;transition:transform .12s var(--ease-out)}.search-clear:active{transform:scale(.92)}.search-count{margin:0;padding:2px 0 10px;color:var(--muted);font-size:.8125rem;border-bottom:1px solid var(--line)}.empty{padding:34px 0;color:var(--muted);text-align:center}.to-top{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:4;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 16px;border:0;border-radius:999px;background:var(--brand);color:var(--bg);font:inherit;font-size:.8125rem;box-shadow:0 6px 20px #0000002e;cursor:pointer;opacity:0;transform:translateY(8px) scale(.96);pointer-events:none;transition:opacity .18s var(--ease-out),transform .18s var(--ease-out)}.to-top-shown{opacity:1;transform:none;pointer-events:auto}.to-top:active{transform:scale(.96)}.rail{position:sticky;top:60px;z-index:2;display:flex;gap:8px;padding:10px 0;margin:0 -16px;padding-inline:16px;overflow-x:auto;scrollbar-width:none;background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.rail::-webkit-scrollbar{display:none}@media(min-width:700px){.rail{margin-inline:-28px;padding-inline:28px;position:static;flex-wrap:wrap;overflow-x:visible;padding-bottom:14px}}.chip{flex:none;display:inline-flex;align-items:center;min-height:44px;padding:0 13px;border-radius:999px;background:var(--surface);color:var(--text);text-decoration:none;font-size:.8125rem;white-space:nowrap;border:1px solid transparent;-webkit-tap-highlight-color:transparent;letter-spacing:.01em;transition:background .14s var(--ease-out),color .14s var(--ease-out),transform .12s var(--ease-out)}.chip:active{transform:scale(.96)}@media(hover:hover)and (pointer:fine){.chip:hover{background:var(--line)}}.chip-active{background:var(--brand);color:var(--bg)}section{padding-top:34px;content-visibility:auto;contain-intrinsic-size:auto 360px}section h2{margin:0 0 4px;font-size:.75rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--brand)}.category-note{margin:0 0 8px;color:var(--muted);font-size:.875rem}.items{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:1fr;column-gap:40px}@media(min-width:700px){.items{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1080px){.items{grid-template-columns:repeat(3,minmax(0,1fr))}}.item{display:flex;gap:14px;align-items:flex-start;padding:11px 0;border-bottom:1px solid var(--line)}.item{min-width:0}@media(max-width:699px){.item:last-child{border-bottom:0}}.item-text{min-width:0;flex:1}.item-line{display:flex;align-items:baseline;justify-content:space-between;gap:14px}.item-name{display:inline-flex;align-items:baseline;gap:7px;font-size:.9375rem;font-weight:450;min-width:0}.item-note{margin:2px 0 0;color:var(--muted);font-size:.8125rem;line-height:1.35;max-width:52ch}.item-flags{margin:4px 0 0}.item-price{flex:none;font-size:.9375rem;font-variant-numeric:tabular-nums;color:var(--muted)}.item-image{flex:none;border-radius:var(--radius);object-fit:cover;background:var(--surface);opacity:0;transition:opacity .22s var(--ease-out)}.item-image[data-loaded=true]{opacity:1}.item-image[data-failed=true]{display:none}.item-out .item-name,.item-out .item-note,.item-out .item-price{color:var(--muted)}.item-out .item-image[data-loaded=true]{filter:grayscale(1);opacity:.55}.out-badge{font-size:.6875rem;text-transform:uppercase;letter-spacing:.04em;padding:2px 6px;border:1px solid var(--line);border-radius:5px;color:var(--muted)}.veg{flex:none;align-self:center;width:10px;height:10px;border:1.5px solid #1a7f37;border-radius:2px;position:relative}.veg:after{content:"";position:absolute;inset:2px;border-radius:50%;background:#1a7f37}.footer{margin-top:30px;padding-top:14px;border-top:1px solid var(--line);color:var(--muted);font-size:.8125rem}.message{padding-top:64px;text-align:center}.message h1{font-size:1.2rem;margin-bottom:6px}.message p{color:var(--muted);margin-top:0}.message button{margin-top:16px;padding:10px 18px;border-radius:999px;border:0;background:var(--brand);color:var(--bg);font:inherit;cursor:pointer;transition:transform .14s var(--ease-out)}.message button:active{transform:scale(.97)}.skeleton{background:var(--surface);border-radius:var(--radius);animation:pulse .7s ease-in-out infinite}.skeleton-logo{width:44px;height:44px;border-radius:10px}.skeleton-title{height:22px;width:190px}.skeleton-chip{height:44px;width:82px;border-radius:999px}.skeleton-row{height:74px;margin-top:14px}@keyframes pulse{50%{opacity:.55}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.skeleton{animation:none}.chip:active{transform:none}.item-image{opacity:1;transition:none}.to-top{transition:opacity .18s linear;transform:none}.search-clear:active,.to-top:active{transform:none}}
