
body{margin:0;font-family:'Figtree',system-ui,sans-serif;background:#FBF6EE}
*{box-sizing:border-box}
button{font:inherit;color:inherit;cursor:pointer}
.app{--bg:#FBF6EE;--ink:#1E2A30;--muted:#5E5048;--card:#fff;--line:#EADFCF;--line2:#F1E9DE;--field:#D9C7B2;--hero:#8B9DA7;--accent:#3F535E;--on-accent:#fff;--accent-h:#33454F;--tab-bg:#fff;--tab-ink:#4E3F35;--price:#1E2A30;--badge-bg:#FCE3C6;--badge-ink:#6E3A0E;--count-bg:#F5B26E;--count-ink:#1E2A30;--sheet:#FBF6EE;--grp:#fff;--req-bg:#1E2A30;--req-ink:#fff;--miss-bg:#B42318;--miss-ink:#fff;--opt-bg:#F1E9DE;--opt-ink:#5E4E43;--ind:#8C9AA1;--ind-ink:#fff;--input:#fff;--step:#fff;--wa:#1F7A4D;--wa-ink:#fff;--wa-h:#18643F;--free-bg:#E5F3EA;--free-ink:#1D5E3A;--unk-bg:#F1E9DE;--unk-ink:#3F535E;--agree-bg:#FCE3C6;--agree-ink:#6E3A0E;--err-bg:#FDECEA;--err-ink:#8A1C12;--warn:#B42318;--icon:#3F535E;--close:#fff;--backdrop:rgba(30,42,48,.5);--sum:#1E2A30;--dash:#D9C7B2;--info-bg:#fff;--info-ink:#3F535E;--rule:#E2D3C0;--chip:#fff;--tog-bg:rgba(255,255,255,.92);--tog-ink:#1E2A30;--ph:#F3E6D6}
.app.dark{--bg:#12191E;--ink:#F4F0EA;--muted:#A7B3B9;--card:#1C262C;--line:#2F3C44;--line2:#2F3C44;--field:#33424B;--hero:#1C262C;--accent:#F5B26E;--on-accent:#12191E;--accent-h:#FFC287;--tab-bg:#1C262C;--tab-ink:#C9D3D8;--price:#F5B26E;--badge-bg:#F5B26E;--badge-ink:#12191E;--count-bg:#12191E;--count-ink:#F5B26E;--sheet:#1A2329;--grp:#212C33;--req-bg:#F5B26E;--req-ink:#12191E;--miss-bg:#FF8A7A;--miss-ink:#12191E;--opt-bg:#33424B;--opt-ink:#D5DEE2;--ind:#6D7C84;--ind-ink:#12191E;--input:#12191E;--step:#243037;--wa:#25A866;--wa-ink:#0B1A12;--wa-h:#2EBF76;--free-bg:#173A2A;--free-ink:#9BE6BB;--unk-bg:#243037;--unk-ink:#D5DEE2;--agree-bg:#3D2A14;--agree-ink:#F8C993;--err-bg:#3A1A17;--err-ink:#FFB4A8;--warn:#FF8A7A;--icon:#F5B26E;--close:#12191E;--backdrop:rgba(0,0,0,.6);--sum:#D5DEE2;--dash:#3A4750;--info-bg:#1C262C;--info-ink:#F4F0EA;--rule:#2F3C44;--chip:#12191E;--tog-bg:#12191E;--tog-ink:#F5B26E;--ph:#2A363E}
.app{position:relative;width:100%;max-width:480px;height:100%;margin:0 auto;overflow:hidden;background:var(--bg);color:var(--ink);transition:background .25s,color .25s}
.app a{color:var(--accent)}
.scroll{position:absolute;inset:0;overflow-y:auto;padding-bottom:150px;scroll-behavior:auto}
.hero{position:relative;background:var(--hero);padding:30px 0 30px;display:flex;flex-direction:column;align-items:center;border-radius:0 0 28px 28px;overflow:hidden}
.app .top-strip{margin:16px 16px 0;width:calc(100% - 32px)}
/* Brand pattern: one wide band under the logo, thin strips elsewhere. Kept on its own white so it looks the same in light and dark mode. */
/* A keeps its soft, see-through pattern behind the logo */
.hero-band{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:.16;pointer-events:none}
.app.dark .hero-band{opacity:.10}
.hero .logo-btn{z-index:1}
.hero-tools{z-index:2}
.pat-strip{display:block;width:100%;height:26px;object-fit:cover;object-position:center;border-radius:10px;background:#fff}
.foot-strip{margin:22px 16px 0;width:auto}
.logo{width:196px;height:auto;display:block}
.hero-tools{position:absolute;top:12px;inset-inline:12px;display:flex;justify-content:space-between;pointer-events:none}
.hero-tools button{pointer-events:auto}
.theme{width:44px;height:44px;border-radius:50%;border:0;background:var(--tog-bg);color:var(--tog-ink);display:flex;align-items:center;justify-content:center;box-shadow:0 1px 4px rgba(0,0,0,.18);flex:none}
.lang{height:44px;min-width:64px;padding:0 14px;border-radius:999px;border:0;background:var(--tog-bg);color:var(--tog-ink);font-weight:800;font-size:15px;display:flex;align-items:center;justify-content:center;gap:6px;box-shadow:0 1px 4px rgba(0,0,0,.18);flex:none}
.lang .ar-word{font-family:'Tajawal',system-ui,sans-serif;font-size:16px}
.top-tools{margin-inline-start:auto;display:flex;gap:6px}
.top .theme,.top .lang{box-shadow:none;border:1.5px solid var(--field)}
.info{display:flex;justify-content:center;gap:6px 18px;padding:16px 16px 2px;flex-wrap:wrap}
.info-item{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--info-ink);padding:2px 0}
.loc-wrap{padding:12px 16px 4px}
.app a.loc-btn{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:16px;background:var(--agree-bg);color:var(--agree-ink);border:1.5px solid #F5A753;text-decoration:none;box-shadow:0 2px 8px rgba(110,58,14,.12)}
.app a.loc-btn:active{transform:translateY(1px)}
.loc-pin{flex:none;width:38px;height:38px;border-radius:50%;background:#F5A753;color:#1E2A30;display:flex;align-items:center;justify-content:center}
.loc-txt{flex:1;display:flex;flex-direction:column;line-height:1.25}
.loc-t1{font-weight:800;font-size:15px}.loc-t2{font-size:12.5px;font-weight:600;opacity:.85}
.loc-go{flex:none}
.app[dir="rtl"] .loc-go{transform:scaleX(-1)}
.info-item svg{color:var(--icon)}
.app a.info-link{text-decoration:none;border-color:var(--accent);color:var(--accent)}
.info-note{margin:4px 16px 0;text-align:center;font-size:12.5px;color:var(--muted);line-height:1.45}
.app a.map-btn{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;margin-top:12px;padding:0 14px;border:1.5px solid var(--accent);border-radius:14px;background:var(--chip);font-weight:800;font-size:14px;color:var(--accent);text-decoration:none;text-align:center}
.app a.map-btn svg{flex:none}
.tabs{position:sticky;top:0;z-index:5;display:flex;gap:8px;overflow-x:auto;background:var(--bg);padding:10px 16px;border-bottom:1px solid var(--line);scrollbar-width:none}
.tab{flex:none;display:flex;align-items:center;min-height:44px;padding:0 16px;border-radius:999px;border:1.5px solid var(--field);font-weight:700;font-size:14.5px;color:var(--tab-ink);background:var(--tab-bg);cursor:pointer}
.tab.on{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}
.cat{padding:6px 16px 8px}
.cat-h{font-family:'Young Serif',Georgia,serif;font-weight:400;font-size:26px;margin:18px 0 10px;display:flex;align-items:center;gap:12px}
.cat-h::after{content:'';flex:1;height:1px;background:var(--rule)}
.list{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:0 14px}
.row{display:flex;gap:12px;width:100%;text-align:start;background:none;border:0;border-bottom:1px solid var(--line2);padding:14px 0;position:relative}
.row:last-child{border-bottom:0}
.row-txt{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}
.row-name{font-weight:800;font-size:16px}
.row-desc{font-size:13.5px;color:var(--muted);line-height:1.4}
.row-meta{display:flex;gap:8px;align-items:center;margin-top:auto;padding-top:4px}
.price{font-weight:800;font-size:15px;color:var(--price)}
.badge{font-size:12px;font-weight:800;background:var(--badge-bg);color:var(--badge-ink);border-radius:999px;padding:2px 8px}
.photo{flex:none;width:104px;height:104px;border-radius:14px;object-fit:cover;display:block;background:var(--ph)}
.plus{position:absolute;inset-inline-end:6px;bottom:20px;width:32px;height:32px;border-radius:50%;background:var(--accent);color:var(--on-accent);box-shadow:0 1px 4px rgba(0,0,0,.3);display:flex;align-items:center;justify-content:center}
.foot{font-size:12.5px;color:var(--muted);padding:20px 16px 0;margin:0;line-height:1.5;text-align:center}
.bar{position:absolute;left:0;right:0;bottom:0;padding:12px 16px 18px;background:var(--bg);border-top:1px solid var(--line);z-index:10}
.cta{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:56px;padding:0 20px;border:0;border-radius:999px;background:var(--accent);color:var(--on-accent);font-weight:800;font-size:16px;text-decoration:none}
.cta:hover{color:var(--on-accent);background:var(--accent-h)}
.cta-count{background:var(--count-bg);color:var(--count-ink);border-radius:999px;min-width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:14px}
.cta.wa{justify-content:center;background:var(--wa);color:var(--wa-ink)}.cta.wa:hover{background:var(--wa-h)}
.cta.dim{opacity:.55}
.overlay{position:absolute;inset:0;z-index:20;display:flex;flex-direction:column;justify-content:flex-end}
.backdrop{position:absolute;inset:0;border:0;background:var(--backdrop)}
.sheet{position:relative;background:var(--sheet);border-radius:28px 28px 0 0;max-height:92%;display:flex;flex-direction:column;overflow:hidden}
.sheet-scroll{overflow-y:auto;flex:1;padding:14px 14px 0}
.sheet-photo{height:200px;border-radius:20px;position:relative;overflow:hidden;background:var(--ph)}
.sheet-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.sheet-close{position:absolute;top:10px;inset-inline-end:10px;width:40px;height:40px;border-radius:50%;border:0;background:var(--close);color:var(--ink);display:flex;align-items:center;justify-content:center}
.sheet-body{padding:16px 4px 12px}
.sheet-name{font-family:'Young Serif',Georgia,serif;font-weight:400;font-size:28px;margin:0;line-height:1.15}
.sheet-desc{color:var(--muted);font-size:15px;margin:6px 0;line-height:1.45}
.sheet-price{font-weight:800;font-size:16px;color:var(--price)}
.grp{background:var(--grp);border:1px solid var(--line);border-radius:18px;margin-top:14px;padding:14px 14px 4px}
.grp-h{display:flex;justify-content:space-between;align-items:center}
.grp-name{font-family:'Young Serif',Georgia,serif;font-size:18px}
.req,.opt{font-size:12px;font-weight:800;border-radius:999px;padding:3px 10px}
.req{background:var(--req-bg);color:var(--req-ink)}.req.miss{background:var(--miss-bg);color:var(--miss-ink)}
.opt{background:var(--opt-bg);color:var(--opt-ink)}
.grp-hint{font-size:13px;color:var(--muted);margin:2px 0 4px}
.choice{display:flex;align-items:center;gap:12px;width:100%;min-height:50px;border:0;border-top:1px solid var(--line2);background:none;padding:0;text-align:start;font-size:15.5px}
.ind{flex:none;width:22px;height:22px;border:2px solid var(--ind);display:flex;align-items:center;justify-content:center;color:var(--ind-ink)}
.round .ind{border-radius:50%}.square .ind{border-radius:6px}
.ind svg{opacity:0}
.choice.on .ind{background:var(--accent);border-color:var(--accent)}.choice.on .ind svg{opacity:1}
.ch-name{flex:1;padding:10px 0;line-height:1.35}.ch-price{color:var(--muted);font-size:14px;white-space:nowrap}
.pop{display:table;margin-top:4px;font-size:11.5px;font-weight:800;color:#9A4A0B;background:#FDE7D3;border-radius:999px;padding:2px 9px}
.lbl{display:block;font-weight:800;font-size:14px;margin:16px 0 6px}
.opt-t{font-weight:400;color:var(--muted);font-family:'Figtree',system-ui,sans-serif;font-size:14px}
.input{display:block;width:100%;font:inherit;font-size:16px;padding:12px 14px;border:1.5px solid var(--field);border-radius:14px;background:var(--input);color:var(--ink);resize:vertical;min-height:48px}
.input::placeholder{color:var(--muted);opacity:.8}
.input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(128,128,128,.2)}
.sheet-foot{border-top:1px solid var(--line);padding:12px 16px 18px;background:var(--sheet)}
.warn{color:var(--warn);font-size:13.5px;font-weight:800;margin-bottom:8px}
.foot-row{display:flex;gap:12px;align-items:center}
.foot-row .cta{flex:1}
.step{display:flex;align-items:center;gap:2px;border:1.5px solid var(--field);border-radius:999px;height:56px;padding:0 6px;background:var(--step)}
.step button{width:40px;height:44px;border:0;background:none;display:flex;align-items:center;justify-content:center}
.step span{min-width:22px;text-align:center;font-weight:800}
.step.sm{height:40px}.step.sm button{width:34px;height:36px}
.top{position:sticky;top:0;z-index:5;background:var(--bg);display:flex;align-items:center;gap:6px;padding:8px;border-bottom:1px solid var(--line)}
.iconbtn{width:44px;height:44px;border:0;background:none;border-radius:50%;display:flex;align-items:center;justify-content:center;flex:none}
.top-h{font-family:'Young Serif',Georgia,serif;font-weight:400;font-size:22px;margin:0}
.pad{padding:14px 16px;display:flex;flex-direction:column;gap:12px}
.card{background:var(--card);border-radius:20px;padding:16px;border:1px solid var(--line)}
.card-h{font-family:'Young Serif',Georgia,serif;font-weight:400;font-size:20px;margin:0 0 4px}
.line{display:flex;gap:10px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--line2)}
.line-main{flex:1;min-width:0}
.line-name{font-weight:800}
.line-opt{font-size:13px;color:var(--muted);margin-top:2px;line-height:1.4}
.line-price{font-weight:800;margin-top:4px;font-size:14px;color:var(--price)}
.link-btn{border:0;background:none;color:var(--accent);font-weight:800;padding:0;min-height:44px;text-decoration:underline}
.sum-row{display:flex;justify-content:space-between;gap:12px;padding:5px 0;font-size:15px;color:var(--sum)}
.sum-row.grand{font-weight:800;font-size:18px;border-top:1px dashed var(--dash);margin-top:6px;padding-top:12px;color:var(--ink)}
.seg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}
.seg-b{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;border:1.5px solid var(--field);border-radius:14px;background:var(--chip);font-weight:800;font-size:15px}
.seg-b.on{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}
.paste-row{display:flex;gap:8px;align-items:stretch}
.paste-row .input{flex:1;min-width:0}
.btn2{flex:none;display:flex;align-items:center;justify-content:center;gap:6px;min-height:48px;padding:0 14px;border:1.5px solid var(--field);border-radius:14px;background:var(--chip);font-weight:800;font-size:14px;color:var(--ink)}
.btn2 svg{color:var(--icon)}
.btn2:hover{border-color:var(--accent)}
.hint{font-size:12.5px;color:var(--muted);margin:6px 0 0;line-height:1.45}
.loc-msg{font-size:13px;color:var(--ink);margin:8px 0 0}
.fee{margin-top:12px;padding:10px 12px;border-radius:12px;font-size:13.5px;font-weight:700;line-height:1.45}
.fee.free{background:var(--free-bg);color:var(--free-ink)}.fee.unknown{background:var(--unk-bg);color:var(--unk-ink)}.fee.agree{background:var(--agree-bg);color:var(--agree-ink)}
.chips{display:flex;gap:8px;overflow-x:auto;padding:6px 0;scrollbar-width:none}
.chip{flex:none;min-height:44px;padding:0 14px;border:1.5px solid var(--field);border-radius:999px;background:var(--chip);font-weight:800;font-size:14px}
.chip.on{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}
.day{display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:16px;min-width:74px;padding:8px 10px}
.d-top{font-size:14px}.d-sub{font-size:12px;font-weight:600}
.errs{background:var(--err-bg);color:var(--err-ink);border-radius:14px;padding:12px 14px;font-size:14px;line-height:1.6}
.muted{color:var(--muted);font-size:14px;margin:6px 0}.center{text-align:center;padding:0 8px;line-height:1.5}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.receipt-box{border-radius:18px;overflow:hidden;border:1px solid var(--line);background:var(--card);min-height:200px;display:flex;align-items:center;justify-content:center}
.receipt{display:block;width:100%;height:auto}
.receipt-wait{padding:40px 0}
.save{align-self:center}
.send-msg{margin:0;padding:10px 12px;border-radius:12px;background:var(--unk-bg);color:var(--unk-ink);font-size:13.5px;font-weight:700;line-height:1.45}
.bar2{display:flex;flex-direction:column;gap:6px;padding-bottom:12px}
.app a.text-alt{align-self:center;display:flex;align-items:center;min-height:36px;font-size:14px;font-weight:700;color:var(--muted);text-decoration:underline}
.order-no{display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px 0}
.order-no span{font-size:12.5px;font-weight:800;letter-spacing:.06em;color:var(--muted)}
.order-no strong{font-family:'Young Serif',Georgia,serif;font-weight:400;font-size:26px}
.kv{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid var(--line2);font-size:15px}
.kv:last-child{border-bottom:0}
.k{width:96px;flex:none;color:var(--muted)}.v{flex:1;font-weight:700;white-space:pre-wrap;word-break:break-word}
.rline{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid var(--line2)}
.rq{font-weight:800;color:var(--accent);min-width:26px}
.app.ar,.app.ar .cat-h,.app.ar .sheet-name,.app.ar .grp-name,.app.ar .top-h,.app.ar .card-h,.app.ar .opt-t,.app.ar .input,.app.ar button{font-family:'Tajawal',system-ui,sans-serif}
.app.ar .cat-h,.app.ar .sheet-name,.app.ar .grp-name,.app.ar .top-h,.app.ar .card-h{font-weight:800}
.app.ar .row-desc,.app.ar .sheet-desc{line-height:1.6}
.app.ar .iconbtn svg{transform:scaleX(-1)}
/* Home page (www.pastry-station.com): logo, menu button, location button */
.hm{position:absolute;inset:0;overflow-y:auto;background:#FBF6EE;color:#1E2A30;display:flex;flex-direction:column}
.hm-top{position:relative;flex:1;min-height:430px;background:#8B9DA7;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px 72px;overflow:hidden}
.hm-pat{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.16;pointer-events:none}
.hm-logo{position:relative;width:230px;max-width:70%;height:auto;display:block}
.hm-tag{position:relative;margin:22px 0 0;text-align:center;color:#fff;font-size:15px;font-weight:600;line-height:1.5}
.hm-tag span{display:block;font-family:'Tajawal',sans-serif;font-weight:500;opacity:.92}
.hm-sheet{position:relative;margin-top:-36px;background:#FBF6EE;border-radius:32px 32px 0 0;padding:30px 20px 22px;display:flex;flex-direction:column;gap:14px}
.hm-btn{display:flex;align-items:center;gap:14px;width:100%;min-height:76px;padding:12px 18px;border-radius:20px;text-decoration:none;text-align:start;border:0;font:inherit;cursor:pointer}
.hm-ico{flex:none;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center}
.hm-txt{flex:1;display:flex;flex-direction:column;line-height:1.25}
.hm-en{font-weight:800;font-size:18px}
.hm-ar{font-family:'Tajawal',sans-serif;font-weight:700;font-size:16px;opacity:.9}
.hm-go{flex:none}
.hm-menu{background:#3F535E;color:#fff;box-shadow:0 6px 16px rgba(30,42,48,.22)}
.hm-menu .hm-ico{background:rgba(255,255,255,.14);color:#fff}
.app a.hm-loc{background:#FCE3C6;color:#6E3A0E;border:1.5px solid #F5A753;box-shadow:0 3px 10px rgba(110,58,14,.12)}
.hm-loc .hm-ico{background:#F5A753;color:#1E2A30}
.hm-btn:active{transform:translateY(1px)}
.hm-strip{display:block;width:100%;height:26px;object-fit:cover;border-radius:10px;margin-top:8px}
.hm-foot{margin:2px 0 0;text-align:center;font-size:12.5px;color:#5E5048}
.logo-btn{position:relative;display:block;padding:0;border:0;background:none;cursor:pointer}

/* ---- website additions ---- */
html,body{height:100%}
body{overscroll-behavior:none;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}
html.dark,html.dark body{background:#12191E}
#app{height:100%;height:100dvh}
.ps-busy .bar .cta{opacity:.6;pointer-events:none}
sc-if{display:contents}
.bar{padding-bottom:calc(18px + env(safe-area-inset-bottom,0px))}
.bar2{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}
.sheet-foot{padding-bottom:calc(14px + env(safe-area-inset-bottom,0px))}
@media (min-width:481px){.app{box-shadow:0 0 0 1px rgba(30,42,48,.06),0 10px 40px rgba(30,42,48,.10)}}

/* ---- iPad and PC (700px and wider). Phones are not affected. ---- */
@media (min-width:700px){
  .app{max-width:none;box-shadow:none}
  /* home */
  .hm-logo{width:300px}
  .hm-tag{font-size:17px}
  .hm-sheet{width:100%;max-width:560px;margin-inline:auto}
  /* menu header */
  .hero{padding:44px 0}
  .logo{width:240px}
  .hero-tools{top:16px;inset-inline:max(16px,calc((100% - 1068px)/2))}
  .app .top-strip,.app .foot-strip{width:calc(100% - 32px);max-width:1068px;margin-inline:auto}
  .loc-wrap{padding-inline:16px}
  .app a.loc-btn{max-width:520px;margin-inline:auto}
  .tabs{padding-inline:max(16px,calc((100% - 1068px)/2))}
  .cat{padding-inline:max(16px,calc((100% - 1068px)/2))}
  .foot{padding-inline:max(16px,calc((100% - 1068px)/2))}
  /* menu items as cards in 2 columns */
  .list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;background:none;border:0;border-radius:0;padding:0}
  .list .row,.list .row:last-child{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:14px;align-items:flex-start}
  .list .row:hover{border-color:var(--accent)}
  .list .plus{inset-inline-end:20px;bottom:20px}
  /* bottom buttons stay a comfortable width */
  .bar{padding-inline:max(16px,calc((100% - 560px)/2))}
  /* checkout and review in a centered column */
  .top{padding-inline:max(8px,calc((100% - 656px)/2))}
  .pad{width:100%;max-width:672px;margin-inline:auto}
  .receipt-box{width:100%;max-width:460px;margin-inline:auto}
  /* item popup as a centered box */
  .overlay{justify-content:center;align-items:center;padding:24px}
  .sheet{width:100%;max-width:560px;max-height:100%;border-radius:28px;box-shadow:0 20px 60px rgba(0,0,0,.25)}
  .sheet-photo{height:260px}
}

/* header: language + theme side by side, ☰ on the other side */
.tool-col{display:flex;flex-direction:row;align-items:center;gap:8px;pointer-events:none}
.tool-col button{pointer-events:auto}
.hero-tools .lang{height:36px;min-width:0;padding:0 12px;gap:6px;font-size:13.5px;line-height:1}
.hero-tools .lang span{display:block;line-height:1;text-box:trim-both cap alphabetic}
.lang .globe{flex:none;display:block}
.hero-tools .lang .globe{width:19px;height:19px}
.lang .ar-word{font-family:'Tajawal',system-ui,sans-serif;font-size:15px;font-weight:700;line-height:1}
.hero-tools .theme,.navbtn{width:36px;height:36px}
.hero-tools .theme svg{width:19px;height:19px}
.navbtn svg{width:20px;height:20px}
.navbtn{border-radius:50%;border:0;background:var(--tog-bg);color:var(--tog-ink);display:flex;align-items:center;justify-content:center;box-shadow:0 1px 4px rgba(0,0,0,.18);flex:none;pointer-events:auto}
/* slightly see-through header buttons */
.hero-tools .lang,.hero-tools .theme,.navbtn{background:rgba(255,255,255,.4);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.app.dark .hero-tools .lang,.app.dark .hero-tools .theme,.app.dark .navbtn{background:rgba(18,25,30,.4)}
.top .lang .globe{width:16px;height:16px}
.top .lang{gap:5px;padding:0 10px}
/* side curtain */
@keyframes psFade{from{opacity:0}to{opacity:1}}
@keyframes psSlideL{from{transform:translateX(-100%)}to{transform:none}}
@keyframes psSlideR{from{transform:translateX(100%)}to{transform:none}}
.nav-back{position:absolute;inset:0;z-index:30;background:var(--backdrop);border:0;cursor:default;animation:psFade .2s ease-out}
.drawer{position:absolute;z-index:31;top:0;bottom:0;inset-inline-start:0;width:min(82%,320px);background:var(--bg);color:var(--ink);display:flex;flex-direction:column;box-shadow:0 0 40px rgba(0,0,0,.25);animation:psSlideL .25s ease-out;overflow-y:auto}
.app[dir="rtl"] .drawer{animation-name:psSlideR}
.dr-head{position:relative;background:var(--hero);padding:22px 16px 20px;display:flex;justify-content:center;overflow:hidden}
.dr-pat{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.16;pointer-events:none}
.app.dark .dr-pat{opacity:.10}
.dr-logo{position:relative;width:132px;height:auto;display:block}
.dr-close{position:absolute;z-index:1;top:10px;inset-inline-end:10px;width:40px;height:40px;border-radius:50%;border:0;background:var(--tog-bg);color:var(--tog-ink);display:flex;align-items:center;justify-content:center;box-shadow:0 1px 4px rgba(0,0,0,.18)}
.dr-list{display:flex;flex-direction:column;padding:10px}
.dr-sep{height:1px;background:var(--line);margin:8px 6px}
.app .nav-it{display:flex;align-items:center;gap:14px;min-height:52px;padding:0 12px;border:0;border-radius:14px;background:none;color:var(--ink);font-weight:700;font-size:16px;text-decoration:none;text-align:start;width:100%}
.app .nav-it svg{color:var(--icon);flex:none}
.app .nav-it:hover{background:var(--line2)}
.app .nav-it.on{background:var(--opt-bg)}
.app .nav-it .ar-word{font-family:'Tajawal',system-ui,sans-serif;font-weight:700;font-size:17px}
.dr-foot{margin-top:auto;padding:16px;text-align:center;font-size:12.5px;color:var(--muted)}

@media (min-width:1100px){
  .list{grid-template-columns:repeat(3,minmax(0,1fr))}
}
