/* Public menu page: page background, loading and error states, and the staff padlock. */
body{margin:0;background:#f8f3f0}
body.noir{background:#0e0b0c}
.cv-head{position:relative}
.pm-wait{color:#e9d9dc;text-align:center;font:600 14px/1.5 "Manrope",system-ui,sans-serif;padding:40px 16px;margin:0}
.pm-wait button{margin-top:12px;background:#b38c4d;color:#2b1a08;border:0;border-radius:999px;padding:9px 18px;font:inherit;font-weight:800;cursor:pointer}
.staff-btn{position:absolute;top:14px;right:14px;width:36px;height:36px;display:grid;place-items:center;padding:0;background:rgba(255,255,255,.06);color:#e8cf9f;border:1px solid rgba(179,140,77,.55);border-radius:50%;cursor:pointer;transition:background-color .2s,color .2s,transform .15s}
.staff-btn:active{transform:scale(.92)}
.staff-btn:hover{background:rgba(255,255,255,.16);color:#fff}
.staff-btn:focus-visible{outline:2px solid #fff;outline-offset:2px}
@media (max-width:420px){.staff-btn{top:10px;right:10px;width:32px;height:32px}}
/* Book a table: round button top left, mirrors the padlock. */
.book-btn{position:absolute;top:14px;left:14px;height:36px;display:inline-flex;align-items:center;gap:7px;padding:0 14px 0 11px;background:rgba(255,255,255,.06);color:#e8cf9f;border:1px solid rgba(179,140,77,.55);border-radius:999px;text-decoration:none;font:700 12.5px/1 "Manrope",system-ui,sans-serif;letter-spacing:.04em;transition:background-color .2s,color .2s,transform .15s}
.book-btn:hover{background:rgba(255,255,255,.16);color:#fff}
.book-btn:active{transform:scale(.94)}
.book-btn:focus-visible{outline:2px solid #fff;outline-offset:2px}
@media (max-width:420px){.book-btn{top:10px;left:10px;height:32px;padding:0 9px}.book-btn span{display:none}}
.foot-book{display:inline-block;margin:14px 0 2px;background:#b38c4d;color:#2b1a08;border-radius:999px;padding:10px 22px;font:800 13px/1 "Manrope",system-ui,sans-serif;text-decoration:none;letter-spacing:.04em}
.foot-book:hover{background:#c19d60}
/* WhatsApp chat button */
.wa-fab{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));width:56px;height:56px;border-radius:50%;background:#25d366;display:grid;place-items:center;box-shadow:0 8px 24px rgba(0,0,0,.28);z-index:80;transition:transform .2s}
.wa-fab:hover{transform:scale(1.07)}
.wa-fab:active{transform:scale(.94)}
.wa-fab:focus-visible{outline:3px solid #fff;outline-offset:2px}
@media (prefers-reduced-motion:no-preference){.wa-fab{animation:waIn .6s .8s cubic-bezier(.2,.8,.2,1) both}.wa-fab::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid #25d366;animation:waRing 2.4s 1.6s ease-out 3}}
@keyframes waIn{from{opacity:0;transform:translateY(20px) scale(.6)}to{opacity:1;transform:none}}
@keyframes waRing{from{transform:scale(1);opacity:.8}to{transform:scale(1.6);opacity:0}}
/* Rate your meal */
.foot-rate{background:transparent;color:#480c1d;border:1.5px solid #b38c4d;margin-left:6px}
.foot-rate:hover{background:#f6ecdd}
.rate-fab{position:fixed;left:18px;bottom:calc(26px + env(safe-area-inset-bottom,0px));z-index:80;display:inline-flex;align-items:center;gap:6px;background:#b38c4d;color:#2b1a08;border-radius:999px;padding:12px 18px;font:800 13.5px/1 "Manrope",system-ui,sans-serif;text-decoration:none;box-shadow:0 8px 24px rgba(0,0,0,.28)}
.rate-fab[hidden]{display:none}
.rate-fab:hover{background:#c19d60}
.rate-fab:focus-visible{outline:3px solid #fff;outline-offset:2px}
.pop-rate{align-self:flex-start;margin-top:10px;background:#f6ecdd;color:#5a3f1c;border-radius:999px;padding:8px 14px;font:800 12.5px/1 "Manrope",system-ui,sans-serif;text-decoration:none}
.pop-rate:hover{background:#efdfc6}
@media (prefers-reduced-motion:no-preference){.rate-fab:not([hidden]){animation:waIn .6s cubic-bezier(.2,.8,.2,1) both}}
