:root{
  --saffron:#f2ca4e;--saffron-deep:#e2b53c;--paper:#fffaf0;--paper-2:#f8edd0;
  --ink:#342819;--ink-soft:#6a5636;--gold:#7a5a1a;--pistachio:#5f7424;--rule:rgba(78,56,15,.28);
  --sheet:#fffaf0;--counter:#efd88f;
  --serif:'Young Serif',Georgia,'Noto Naskh Arabic',serif;
  --sans:'Figtree',system-ui,-apple-system,'Segoe UI','Noto Naskh Arabic',sans-serif;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --saffron:#2a2011;--saffron-deep:#3a2c15;--paper:#1d160d;--paper-2:#271e11;
  --ink:#f6e7bf;--ink-soft:#cdb98b;--gold:#f2ca4e;--pistachio:#b7c96a;--rule:rgba(242,202,78,.25);
  --sheet:#231a0f;--counter:#120d07;
}}
*{box-sizing:border-box}
html{background:var(--counter);-webkit-text-size-adjust:100%;scroll-padding-top:64px}
body{margin:0;color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.5;background:var(--counter);font-synthesis-weight:none}
[dir="rtl"] body{font-family:'Noto Naskh Arabic',var(--sans)}
a{color:inherit}
button{font:inherit;color:inherit;cursor:pointer}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:fixed;inset-inline-start:8px;top:-60px;z-index:30;background:var(--paper);padding:10px 14px}
.skip:focus{top:8px}
.sheet-root{max-width:36rem;margin:0 auto;background:var(--paper);min-height:100vh;min-height:100svh}

/* Saffron band */
.band{background:var(--saffron);padding:14px 18px 12px;padding-top:max(14px,env(safe-area-inset-top))}
.band-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.wordmark{font-family:'Young Serif',Georgia,serif;font-weight:600;font-size:21px;letter-spacing:1.6px;text-decoration:none;line-height:1;display:flex;align-items:baseline;gap:8px;direction:ltr}
.wordmark span{font-family:var(--sans);font-size:11px;letter-spacing:3px;color:var(--gold);font-weight:600}
.lang{display:flex;border:1px solid var(--rule);border-radius:999px;padding:2px}
.lang button{border:0;background:none;padding:6px 10px;font-size:13px;border-radius:999px;min-width:40px;min-height:32px}
.lang button[aria-pressed="true"]{background:var(--ink);color:var(--paper)}
.status{margin:10px 0 0;font-size:14px;color:var(--ink-soft);display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.dot{width:8px;height:8px;border-radius:50%;background:var(--ink-soft)}
.status.is-open .dot{background:var(--pistachio);box-shadow:0 0 0 3px color-mix(in srgb,var(--pistachio) 25%,transparent)}
.table-chip{margin-inline-start:auto;background:var(--ink);color:var(--paper);padding:3px 10px;border-radius:999px;font-size:13px;font-weight:600}

/* Signature product: first thing on screen */
.signature{display:block;width:100%;border:0;padding:0;background:var(--paper-2);text-align:start;position:relative}
.signature img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:50% 58%}
.signature-copy{display:grid;gap:2px;padding:14px 18px 18px;border-bottom:1px solid var(--rule)}
.signature-kicker{font-size:13px;color:var(--gold);font-weight:600}
.signature-name{font-variant-numeric:lining-nums;font-family:var(--serif);font-size:34px;line-height:1.05;font-weight:600}
.signature-meta{font-size:15px;color:var(--ink-soft)}
.signature-meta b{color:var(--ink);font-weight:700;font-variant-numeric:tabular-nums}

/* Sticky categories */
.cats{position:sticky;top:0;z-index:5;display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;background:var(--paper);border-bottom:1px solid var(--rule);padding:8px 12px}
.cats::-webkit-scrollbar{display:none}
.cats a{flex:none;text-decoration:none;font-size:15px;padding:8px 12px;border-radius:999px;color:var(--ink-soft);white-space:nowrap}
.cats a[aria-current="true"]{background:var(--saffron);color:var(--ink);font-weight:600}

.search{padding:14px 18px 0}
.search input{width:100%;font:inherit;font-size:16px;color:var(--ink);background:var(--paper-2);border:1px solid transparent;border-radius:10px;padding:11px 14px}
.search input:focus{border-color:var(--gold);outline:none}
.search input::placeholder{color:var(--ink-soft)}

/* Menu sections */
.cat{padding:22px 18px 6px}
.cat h2,.tray h2,.info h2{font-family:var(--serif);font-weight:600;font-size:32px;line-height:1.1;margin:0 0 6px}
.items{list-style:none;margin:0;padding:0}
.item{display:grid;grid-template-columns:1fr auto;gap:14px;width:100%;border:0;background:none;text-align:start;padding:14px 0;border-bottom:1px solid var(--rule);align-items:start}
.items li:last-child .item{border-bottom:0}
.item-line{display:flex;align-items:flex-end;align-items:last baseline;gap:8px}
.item-name{font-variant-numeric:lining-nums;font-family:var(--serif);font-size:23px;font-weight:600;line-height:1.15}
.leader{flex:1;min-width:16px;border-bottom:2px dotted var(--rule);transform:translateY(-5px)}
.item-price{font-weight:700;font-size:16px;font-variant-numeric:tabular-nums;white-space:nowrap;direction:ltr}
.item-price small{font-weight:500;color:var(--ink-soft);font-size:13px}
.item-desc{margin:4px 0 0;font-size:14.5px;color:var(--ink-soft);line-height:1.55}
.item-tray{margin:6px 0 0;font-size:13.5px;color:var(--ink-soft)}
.item-tray b{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:600}
.thumb{width:76px;height:76px;border-radius:8px;object-fit:cover;background:var(--paper-2)}
.item.is-target{animation:flash 1.6s ease}
@keyframes flash{0%,40%{background:color-mix(in srgb,var(--saffron) 45%,transparent)}100%{background:transparent}}
.empty{padding:24px 18px;color:var(--ink-soft)}

/* Tray + info */
.tray{margin:18px 18px 0;padding:20px;background:var(--paper-2);border-radius:12px}
.tray p{margin:0 0 14px;color:var(--ink-soft);font-size:15px}
.wa{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 18px;border-radius:10px;background:var(--ink);color:var(--paper);font-weight:600;text-decoration:none;font-size:15px}
.wa:before{content:'';width:18px;height:18px;flex:none;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 0 0-8.6 15.1L2 22l5-1.3A10 10 0 1 0 12 2zm0 18.2c-1.5 0-3-.4-4.3-1.2l-.3-.2-3 .8.8-2.9-.2-.3A8.2 8.2 0 1 1 12 20.2zm4.5-6.1c-.2-.1-1.5-.7-1.7-.8s-.4-.1-.6.1-.7.8-.8 1-.3.2-.5.1a6.7 6.7 0 0 1-3.3-2.9c-.3-.4.3-.4.8-1.4.1-.2 0-.3 0-.4l-.8-1.8c-.2-.5-.4-.4-.6-.4h-.5a1 1 0 0 0-.7.3 3 3 0 0 0-.9 2.2 5.2 5.2 0 0 0 1.1 2.7 11.8 11.8 0 0 0 4.5 4c1.7.7 2.3.8 3.2.6a2.7 2.7 0 0 0 1.8-1.3 2.2 2.2 0 0 0 .1-1.3c0-.1-.2-.2-.4-.3z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 0 0-8.6 15.1L2 22l5-1.3A10 10 0 1 0 12 2zm0 18.2c-1.5 0-3-.4-4.3-1.2l-.3-.2-3 .8.8-2.9-.2-.3A8.2 8.2 0 1 1 12 20.2zm4.5-6.1c-.2-.1-1.5-.7-1.7-.8s-.4-.1-.6.1-.7.8-.8 1-.3.2-.5.1a6.7 6.7 0 0 1-3.3-2.9c-.3-.4.3-.4.8-1.4.1-.2 0-.3 0-.4l-.8-1.8c-.2-.5-.4-.4-.6-.4h-.5a1 1 0 0 0-.7.3 3 3 0 0 0-.9 2.2 5.2 5.2 0 0 0 1.1 2.7 11.8 11.8 0 0 0 4.5 4c1.7.7 2.3.8 3.2.6a2.7 2.7 0 0 0 1.8-1.3 2.2 2.2 0 0 0 .1-1.3c0-.1-.2-.2-.4-.3z'/%3E%3C/svg%3E") center/contain no-repeat}
.info{padding:26px 18px calc(36px + env(safe-area-inset-bottom))}
.info p{margin:0 0 6px;font-size:15px}
.info-actions{display:flex;gap:10px;margin:14px 0 18px}
.info-actions a{flex:1;text-align:center;text-decoration:none;border:1px solid var(--rule);border-radius:10px;padding:12px;font-weight:600;font-size:15px;min-height:48px}
.fine{font-size:13px!important;color:var(--ink-soft);line-height:1.6}

/* Product sheet */
dialog{border:0;padding:0;margin:auto auto 0;width:100%;max-width:36rem;max-height:92vh;max-height:92svh;border-radius:18px 18px 0 0;background:var(--sheet);color:var(--ink);overflow:auto}
dialog::backdrop{background:rgba(29,22,13,.55)}
dialog[open]{animation:rise .28s cubic-bezier(.2,.8,.2,1)}
@keyframes rise{from{transform:translateY(40px);opacity:.4}to{transform:none;opacity:1}}
.sheet-close{position:sticky;top:0;z-index:2;height:0;display:flex;justify-content:flex-end}
.sheet-close button{margin:10px;width:40px;height:40px;border-radius:50%;border:0;background:var(--paper);font-size:24px;line-height:1;box-shadow:0 1px 6px rgba(29,22,13,.18)}
#sheet-figure{margin:0}
#sheet-figure img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
#sheet-figure[hidden]{display:none}
.sheet-body{padding:20px 20px calc(24px + env(safe-area-inset-bottom))}
#sheet-figure[hidden]+.sheet-body{padding-top:56px}
.sheet-body h2{font-family:var(--serif);font-weight:600;font-size:32px;line-height:1.1;margin:0 0 8px}
.sheet-body>p{margin:0 0 16px;color:var(--ink-soft);font-size:16px}
.prices{margin:0 0 16px;border-top:1px solid var(--rule)}
.prices div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:12px 0;border-bottom:1px solid var(--rule)}
.prices dt{font-size:15px}
.prices dt small{display:block;color:var(--ink-soft);font-size:13px}
.prices dd{margin:0;font-weight:700;font-size:18px;font-variant-numeric:tabular-nums;direction:ltr}
.contains{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:6px;font-size:14px}
.contains span{padding:4px 10px;border-radius:999px;background:var(--paper-2)}
.contains-note{flex-basis:100%;margin:6px 0 16px;font-size:13px;color:var(--ink-soft)}

@media (min-width:640px){
  .sheet-root{margin:24px auto;min-height:0;border-radius:14px;overflow:clip;box-shadow:0 10px 40px rgba(60,40,8,.18)}
  dialog{margin:auto;border-radius:18px}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}
.item-price.is-ask{font-weight:600;font-size:14px;color:var(--ink-soft)}
.wordmark img{display:block;height:40px;width:auto}
/* shadcn-style controls (input, toggle group, tabs, buttons) */
.lang{border-radius:10px;padding:3px;background:color-mix(in srgb,var(--paper) 55%,transparent);border-color:color-mix(in srgb,var(--ink) 20%,transparent)}
.lang button{border-radius:7px;min-height:30px;font-weight:600}
.lang button[aria-pressed="true"]{box-shadow:0 1px 2px rgba(42,32,18,.15)}
.cats{gap:6px}
.cats a{border-radius:8px;font-weight:500;border:1px solid transparent;padding:7px 12px}
.cats a[aria-current="true"]{border-color:color-mix(in srgb,var(--ink) 18%,transparent);box-shadow:0 1px 2px rgba(42,32,18,.08)}
.search input{height:42px;background:var(--paper);border:1px solid var(--rule);border-radius:8px;box-shadow:0 1px 2px rgba(42,32,18,.05);transition:border-color .15s,box-shadow .15s}
.search input:focus{border-color:var(--gold);box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 30%,transparent)}
.wa{border-radius:8px;min-height:44px}
.info-actions a{border-radius:8px;box-shadow:0 1px 2px rgba(42,32,18,.05)}
.tray{border-radius:14px;border:1px solid var(--rule)}
.sheet-close button{border-radius:8px;border:1px solid var(--rule)}
.contains span{border-radius:6px;font-size:12.5px;font-weight:600;padding:3px 8px}
:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 45%,transparent);border-radius:6px}
#sheet-figure{position:relative}
#sheet-concept{position:absolute;right:10px;bottom:10px;margin:0;padding:2px 9px;border-radius:999px;background:rgba(0,0,0,.55);color:#fff;font-size:.72rem}
#sheet-concept[hidden]{display:none}
