/* Optional telephone order slip. Remove its stylesheet/script links to disable. */
:root { --order-gold: #d8aa4c; }
.dish-meta { flex-wrap: wrap; }
.order-add { display:inline-grid; width:2rem; height:2rem; place-items:center; flex:0 0 auto; border:1px solid var(--order-gold); border-radius:50%; background:transparent; color:var(--order-gold); font:700 1.35rem/1 Arial,sans-serif; cursor:pointer; }
.order-add:hover,.order-add:focus-visible { color:#111; background:var(--order-gold); }
.order-slip { position:fixed; z-index:50; right:auto; bottom:0; left:50%; width:min(470px,calc(100vw - 2rem)); height:min(54vh,500px); display:flex; flex-direction:column; overflow:hidden; background:#fff; color:#171717; border:1px solid rgba(216,170,76,.75); border-bottom:0; border-radius:1rem 1rem 0 0; box-shadow:0 -14px 45px #0008; transform:translate(-50%,100%); transition:transform .32s cubic-bezier(.2,.8,.2,1); }
.order-slip.is-open { transform:translate(-50%,0); }
.order-slip__head { display:flex; align-items:center; gap:.65rem; min-height:3.8rem; padding:.7rem .9rem; background:var(--order-gold); color:#17130a; cursor:pointer; }
.order-slip__title { flex:1; margin:0; font-size:1.08rem; line-height:1.2; font-weight:800; }
.order-slip__icon { width:1.45rem; height:1.45rem; flex:0 0 auto; fill:none; stroke:currentColor; stroke-width:1.8; }
.order-slip__toggle { display:grid; place-items:center; width:2.2rem; height:2.2rem; border:0; background:transparent; color:#17130a; font-size:1.6rem; cursor:pointer; }
.order-slip__summary { display:block; font-size:.76rem; font-weight:700; white-space:nowrap; }
.order-slip-tab { position:fixed; z-index:51; right:auto; bottom:0; left:50%; display:flex; min-width:15rem; height:4rem; align-items:center; justify-content:center; padding:.45rem 1rem; border:0; border-radius:.65rem .65rem 0 0; background:var(--order-gold); color:#17130a; box-shadow:0 -4px 18px #0005; cursor:pointer; transform:translateX(-50%); font-family:inherit; font-size:1rem; font-weight:700; line-height:1.2; }
.order-slip-tab[hidden] { display:none; }
.order-slip-tab__plus { position:absolute; left:1rem; font-size:1.5rem; line-height:1; }
.order-slip-tab__text { display:grid; justify-items:center; gap:.15rem; }
.order-slip-tab__text > span:first-child { font-size:1rem; font-weight:800; letter-spacing:.025em; }
.order-slip-tab__summary { font-size:.78rem; font-weight:700; font-variant-numeric:tabular-nums; }
.order-slip__body { overflow:auto; padding:1rem; }
.order-slip__notice { margin:0 0 .8rem; padding:.5rem .65rem; border-left:3px solid var(--order-gold); background:#fff8e8; color:#171717; font-size:.82rem; font-weight:700; }
.order-slip__empty { margin:.2rem 0 .8rem; color:#444; font-size:.9rem; line-height:1.45; }
.order-slip__items { display:grid; gap:.8rem; margin:0; padding:0; list-style:none; }
.order-slip__item { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.4rem .7rem; padding-bottom:.75rem; border-bottom:1px solid #e8e3d9; }
.order-slip__name { font-size:.92rem; font-weight:700; }
.order-slip__price { white-space:nowrap; font-size:.82rem; font-variant-numeric:tabular-nums; }
.order-slip__controls { display:flex; align-items:center; gap:.4rem; color:var(--order-gold); }
.order-slip__controls button,.order-slip__clear,.order-slip__copy { border:0; background:transparent; color:#a97713; cursor:pointer; }
.order-slip__controls button { display:grid; place-items:center; width:1.6rem; height:1.6rem; border:1px solid var(--order-gold); border-radius:50%; font-size:1rem; }
.order-slip__qty { min-width:1rem; text-align:center; color:#171717; font-size:.88rem; font-weight:700; }
.order-slip__total { display:flex; justify-content:space-between; margin:.8rem 0; padding-top:.65rem; border-top:2px solid var(--order-gold); font-size:.98rem; font-weight:700; }
.order-slip__actions { display:grid; grid-template-columns:1fr 1fr; gap:.5rem; }
.order-slip__actions a,.order-slip__actions button { display:flex; min-height:2.7rem; align-items:center; justify-content:center; gap:.4rem; padding:.55rem; border:1px solid var(--order-gold); color:#171717; background:#fff; text-decoration:none; font:inherit; font-size:.84rem; cursor:pointer; }
.order-slip__actions a { background:var(--order-gold); font-weight:700; }
.order-slip__note { margin:.65rem 0 0; color:#555; font-size:.76rem; line-height:1.4; }
.menu-phone-notice { display:table; margin:.8rem 0 0; padding:.6rem .9rem; border:1px solid var(--order-gold); border-radius:.2rem; background:var(--order-gold); color:#111; font-size:.92rem; font-weight:700; }
.order-slip__helper { max-width:1000px; margin:1rem 0 1.4rem; color:var(--muted); font-size:calc(.96rem + 2px); font-weight:700; line-height:1.55; }
@media(max-width:680px) {
  .order-slip { width:calc(100vw - 1.5rem); height:min(52svh,420px); max-height:52svh; border-radius:.8rem .8rem 0 0; }
  .order-slip-tab { min-width:14rem; height:3.6rem; }
  .order-slip__summary { margin-left:auto; }
  .order-slip__head { min-height:3.3rem; padding:.45rem .65rem; }
  .order-slip__body { padding:.65rem; }
  .order-slip__notice { margin-bottom:.45rem; padding:.4rem .55rem; }
  .order-slip__total { margin:.55rem 0; padding-top:.45rem; }
  .order-slip__note { margin-top:.4rem; }
}
@media(prefers-reduced-motion:reduce) { .order-slip { transition:none; } }

.home-page.menu-page .menu-hero > p.menu-phone-notice { color: #111 !important; }
