*{box-sizing:border-box}body{margin:0;font:16px/1.45 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:#1a1a1a;background:#fff}
header{position:sticky;top:0;background:#14532d;color:#fff;padding:10px 14px;display:flex;flex-direction:column;z-index:2}
/* RestoBar Desk logo (C + V mugs) at the top left of the guest page */
header{padding-left:60px;min-height:44px;justify-content:center;background:#14532d url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAMAAADVRocKAAABIFBMVEX6qRajjm2oqZWQYiVwjmteSh6PcU7ZrkzpoR3l3czKuaL7yGAxZEINORr1vi3/////9DK6w6jCbAb/f3/2vi4DRR5Pbki+hSP/ah//0DAA//+/fz8UUy0AAAD8+vAHTCr+1TD7yi5TNQ3wqSTv59XUewvYhBHnlhjwtCllNAf//wD8uzXypxvihxAmSiT3uisnWy6RVgw1QxyvaAr5xS78yS/Iqy36xC77yC9Faiy3oy3wt037xC41YzH7wi03Ohf/qlX//1Womyz0uyz9yTHxxXCWky9Wci13RAvXsy1WKwd3gy6JSQeIiy3/fwDxyIdNdlHHxbH1045jeCzY2Mnmmi7uum7s2bDu6+G3dA+mWwb/AAD//3/blin7qS2SmEJPCmZZAAAAYHRSTlMF/////////////////3ABBP//Apz///8DzAEE/gD//v33/////////v8BDP///y3+////kc/8ba79+/9P/i//AwP7Twv//Pz//P/8//wC//////z/////////AQL/DP+bLMwoAAAKBklEQVR42q1aB1vizBYOTdTVzy1fu/emB5KQBEgIvevSRRB79///i3vOJECCoLHM48KSzLzvnDqVYt4qWluf4DelZ7PZ31DgS38ib/RD7c3m1Bvo1AN+NeulfPk/wqIUyvk/6s3/wZuHtvYJAq0DH3o9X+CxCII6LEIZqoJAHhTydaxAtT9IoOkM06nnEUwoHh33GyYNhYN/ZqN/3CuSF2Xk0CYfIJhAv5ol6Lsw7PVNmoNCLwr5ZfYJSSHffI2C2qycDnZePanQPmwfC105GYIcSPFdew/B5IHRAV4ontPrwZckdL8KFYHilxaY4F5n7kE5QrX/Ovqco3IEFKUOo2vBCCaHTLbM88VA8C5FlefLTUbTghAcMkxJ4NVjOiC8Q3GughAU036bQGeoPGjHfAc8oTBBT2Udmr9B0GGyoP1j7p34SHEu8IXmCwY/wT3F1AV+WHk/PDI0irxQZzraKwRtxH+3ehYM9BEyvELQQfwj+oP4SNET+BLT2URwiPi9j8Mjw4kglHyglBe/yX8SnzDwdXT1lwQPTBP080l81BIvND3xsCDQNL3AV+nPF+6IL+hLSy8I9H/z/NDkvoCBLkLE6fcrBG2m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) no-repeat 10px center;background-size:42px 42px}
header span{font-size:13px;opacity:.9}main{padding:14px;max-width:560px;margin:0 auto 90px}
h1{font-size:19px;margin:6px 0 10px}label{display:block;font-weight:600;margin:12px 0 4px}
input,select,button{font:inherit}input[type=tel],input[type=text]{width:100%;padding:12px;border:1px solid #888;border-radius:10px}
.code{font-size:26px;letter-spacing:.4em;text-align:center}
button{border:0;border-radius:10px;padding:12px 16px;background:#166534;color:#fff;font-weight:600;cursor:pointer}
button.ghost{background:#fff;color:#166534;border:1px solid #166534}button:disabled{opacity:.5}
button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #f59e0b;outline-offset:2px}
.err{color:#b91c1c;font-weight:600}.note{font-size:13px;color:#444}.box{border:1px solid #ccc;border-radius:12px;padding:12px;margin:10px 0}
.tabs{display:flex;gap:6px;overflow-x:auto;padding:6px 0}.tabs button{white-space:nowrap;background:#fff;color:#166534;border:1px solid #166534;padding:8px 12px}
.tabs button[aria-pressed=true]{background:#166534;color:#fff}.item{display:flex;gap:10px;justify-content:space-between;border-bottom:1px solid #e5e5e5;padding:10px 0}
.item .r{display:flex;flex-direction:column;gap:6px;align-items:flex-end}.price{font-weight:700}
.badge{display:inline-block;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:700;border:1px solid}
.b-info{background:#eff6ff;color:#1e3a8a;border-color:#93c5fd}.b-ok{background:#f0fdf4;color:#14532d;border-color:#86efac}
.b-warn{background:#fffbeb;color:#78350f;border-color:#fcd34d}.b-bad{background:#fef2f2;color:#7f1d1d;border-color:#fca5a5}
#bar{position:fixed;left:0;right:0;bottom:0;background:#fff;border-top:1px solid #ccc;padding:10px}
#bar button{width:100%;max-width:560px;display:block;margin:0 auto}
@media (forced-colors:active){button{border:1px solid ButtonText}}
.inline{font-weight:400}

/* dish photos (Wikimedia Commons or the owner's own) */
.item.has-ph { display: grid; grid-template-columns: 96px 1fr; gap: 10px; align-items: start; }
.item.has-ph > .r { grid-column: 1 / -1; }
.ph { margin: 0; }
.ph img { width: 96px; height: 72px; object-fit: cover; border-radius: 8px; display: block; background: #eee; }
.ph figcaption { font-size: 9px; line-height: 1.2; color: #666; margin-top: 2px; overflow-wrap: anywhere; }

pre.bill { white-space: pre-wrap; font: 12px/1.35 ui-monospace, Consolas, monospace; background: #fafafa; padding: 8px; border-radius: 6px; overflow-x: auto; }
a.btn { display: inline-block; padding: 10px 16px; border-radius: 8px; background: #1b7f4b; color: #fff; text-decoration: none; font-weight: 600; }
.item.has-ph.big { grid-template-columns: 1fr; }
.item.has-ph.big .ph img { width: 100%; height: auto; aspect-ratio: 4 / 3; }
.ph img { cursor: zoom-in; }
.row { display: flex; gap: 8px; flex-wrap: wrap; margin: 8px 0; }
.row button { flex: 1 1 30%; }
.box.highlight { border: 2px solid #2e7d32; background: #f1faf1; }

.qr svg{display:block;margin:8px auto;background:#fff}

/* one scrolling menu: Veg / Non-veg / Drinks + sections list + search stay on top while scrolling */
.menu-tools{position:sticky;top:58px;z-index:1;background:#fff;padding:6px 0;border-bottom:1px solid #e5e5e5}
.seg{display:flex;gap:6px}.seg button{flex:1 1 0;padding:9px 6px;background:#fff;color:#166534;border:1px solid #166534;font-size:14px}
.seg button[aria-pressed=true]{background:#166534;color:#fff}
.row2{display:flex;gap:6px;margin-top:6px}.row2 select,.row2 input{flex:1 1 50%;min-width:0;padding:9px;border:1px solid #888;border-radius:10px;background:#fff}
.sec{scroll-margin-top:150px}.sec h2{font-size:17px;margin:16px 0 2px;color:#14532d}
.dot{display:inline-block;width:12px;height:12px;border:2px solid;border-radius:2px;margin-right:6px;vertical-align:-1px;position:relative}
.dot::after{content:"";position:absolute;left:2px;top:2px;width:4px;height:4px;border-radius:50%;background:currentColor}
.d-veg{color:#15803d}.d-nonveg{color:#991b1b}.d-egg{color:#b45309}
button.small{padding:8px 12px;font-size:14px;margin-top:6px}

/* 8 Nov 2026: reconnecting strip, "added" toast, price tables, today's special */
.net{position:sticky;top:58px;z-index:3;background:#fff7ed;color:#7c2d12;border-bottom:2px solid #fb923c;padding:8px 14px;font-size:14px;font-weight:600}
.toast{position:fixed;left:50%;bottom:76px;transform:translateX(-50%);background:#14532d;color:#fff;padding:9px 16px;border-radius:999px;font-size:14px;z-index:5;max-width:92vw;text-align:center;box-shadow:0 4px 14px rgba(0,0,0,.25)}
.seg.top{margin-bottom:6px}.seg.top button{font-size:16px;padding:10px 6px}
.sec h3{font-size:15px;margin:12px 0 4px;color:#333}
.ptw{overflow-x:auto}
table.pt{width:100%;border-collapse:collapse;font-size:15px}
table.pt th{text-align:left;font-size:12px;color:#555;font-weight:600;border-bottom:1px solid #ccc;padding:4px 4px}
table.pt th:not(:first-child),table.pt td:not(:first-child){text-align:right;white-space:nowrap}
table.pt td{border-bottom:1px solid #eee;padding:7px 4px;vertical-align:top}
table.pt td.nm{width:100%}
table.pt tr.off{opacity:.55}
button.pb{background:#fff;color:#14532d;border:1px solid #16a34a;padding:6px 9px;font-size:14px;margin:2px 0 2px 4px;border-radius:8px;min-width:58px}
button.pb.in{background:#dcfce7;border-color:#15803d}
img.thumb{float:left;width:64px;height:48px;object-fit:cover;border-radius:6px;margin:0 8px 4px 0;cursor:zoom-in;background:#eee}
img.thumb.big{float:none;display:block;width:100%;height:auto;aspect-ratio:4/3;margin:0 0 6px}
.qty{display:flex;align-items:center;gap:8px}.qty button{padding:4px 12px;font-size:18px}
.badge.star{margin-left:6px;background:#fef3c7;color:#92400e;border-color:#f59e0b}
.sec.specials{border:2px solid #f59e0b;border-radius:14px;padding:4px 10px 8px;background:#fffbeb;animation:glow 1.4s ease-in-out infinite alternate}
.sec.specials h2.shine{color:#b45309;background:linear-gradient(90deg,#b45309 0%,#f59e0b 40%,#fff3c4 50%,#f59e0b 60%,#b45309 100%);background-size:250% 100%;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:shine 2.2s linear infinite}
table.pt tr.sp td.nm strong{color:#92400e}
@keyframes glow{from{box-shadow:0 0 0 rgba(245,158,11,.0)}to{box-shadow:0 0 16px rgba(245,158,11,.75)}}
@keyframes shine{from{background-position:100% 0}to{background-position:-150% 0}}
@media (prefers-reduced-motion:reduce){.sec.specials,.sec.specials h2.shine{animation:none}}
