:root{--ink:#191713;--muted:#6f6b63;--paper:#f5f2eb;--card:#fff;--gold:#c89b3c;--gold-dark:#8f691d;--green:#18794e;--red:#b42318;--line:#e5dfd3;--shadow:0 18px 50px rgba(30,25,15,.08);font-family:Inter,Tahoma,Arial,sans-serif;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);overflow-wrap:anywhere}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;touch-action:manipulation}button,a{-webkit-tap-highlight-color:transparent}h1,h2,h3,p{margin-top:0}.muted{color:var(--muted)}.eyebrow{color:var(--gold-dark);font-size:.75rem;font-weight:800;letter-spacing:.11em;margin-bottom:.5rem}.toast{position:fixed;z-index:100;top:max(20px,env(safe-area-inset-top));left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100vw - 2rem);background:var(--ink);color:white;padding:.8rem 1rem;border-radius:12px;box-shadow:var(--shadow)}.toast.error{background:var(--red)}
.button{border:0;border-radius:11px;padding:.7rem 1rem;font-weight:800;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.button.primary{background:var(--ink);color:#fff}.button.secondary{background:#fff;border:1px solid var(--line)}.button.danger{background:#fff0ee;color:var(--red)}.button.success{background:#e7f5ee;color:var(--green)}.button.tiny{font-size:.75rem;padding:.45rem .65rem}.button.full{width:100%}.link-button{border:0;background:none;color:#aaa;padding:0;cursor:pointer}
.auth-shell{min-height:100vh;display:grid;place-items:center;padding:2rem;background:radial-gradient(circle at top right,#ead9ac,transparent 35%),var(--paper)}.auth-card{width:min(430px,100%);background:#fff;padding:2.5rem;border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow)}.brand-mark{width:52px;height:52px;border-radius:15px;display:grid;place-items:center;background:var(--ink);color:var(--gold);font-size:1.5rem;font-weight:900;margin-bottom:1.5rem}.stack{display:grid;gap:1rem}.stack label,.form-grid label{display:grid;gap:.45rem;font-weight:700;font-size:.88rem}input,select,textarea{width:100%;border:1px solid #d8d1c4;background:#fff;border-radius:10px;padding:.75rem;color:var(--ink)}textarea{min-height:90px;resize:vertical}.check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:start}.check input{width:auto;margin-top:.15rem}.demo-note{margin:1rem 0 0;color:#8b8479;font-size:.78rem}
.dashboard{min-height:100vh;display:grid;grid-template-columns:230px 1fr}.sidebar{background:#181714;color:#fff;padding:1.5rem;display:flex;flex-direction:column;gap:2rem}.sidebar .brand{font-size:1.25rem;display:block}.sidebar small{display:block;color:#898681;margin-top:.25rem}.sidebar nav{display:grid;gap:.35rem}.sidebar nav a{padding:.75rem;border-radius:10px;color:#aaa}.sidebar nav a.active,.sidebar nav a:hover{background:#fff;color:#111}.status-card{margin-top:auto;padding:1rem;background:#25231f;border-radius:14px;display:grid;gap:.7rem}.status-dot{width:8px;height:8px;background:#777;border-radius:50%}.status-dot.online{background:#35c889}.dashboard-main{padding:2rem;min-width:0}.page-header{display:flex;justify-content:space-between;align-items:end;margin-bottom:2rem;gap:1rem}.page-header h1{font-size:2.2rem;margin-bottom:.35rem}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1rem}.metric{background:#fff;border:1px solid var(--line);border-radius:16px;padding:1.25rem}.metric span{display:block;color:var(--muted);font-size:.85rem}.metric strong{font-size:1.8rem;display:block;margin-top:.8rem}.panel{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}.panel.padded{padding:1.5rem}.panel-heading{padding:1rem 1.25rem;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.panel-heading h2{margin:0}.order-row{display:grid;grid-template-columns:140px 1fr 150px 100px;align-items:center;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--line)}.order-row:hover{background:#fbfaf7}.order-row small{display:block;color:var(--muted);margin-top:.25rem}.badge{justify-self:start;padding:.4rem .65rem;border-radius:999px;font-size:.75rem;font-weight:800;background:#eee}.badge.new{background:#fff1df;color:#9a5700}.badge.preparing{background:#eaf2ff;color:#2463a3}.badge.ready{background:#e7f5ee;color:#18794e}.badge.rejected{background:#fff0ee;color:#b42318}.empty{text-align:center;padding:2.5rem;color:var(--muted)}.empty strong{display:block;color:var(--ink);margin-bottom:.4rem}.two-col{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(420px,1.2fr);gap:1rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-grid .full{grid-column:1/-1}.category-block{padding:1.25rem}.category-block h3{border-bottom:1px solid var(--line);padding-bottom:.7rem}.category-block h3 span{float:right;color:var(--muted)}.menu-admin-row{display:grid;grid-template-columns:1fr 90px auto;align-items:center;gap:1rem;padding:.65rem 0}.menu-admin-row small{display:block;color:var(--muted)}.narrow-page{max-width:820px;margin:0 auto;padding:2rem}.back-link{display:inline-block;margin-bottom:1.2rem;color:var(--muted)}.order-detail-head{display:flex;justify-content:space-between;align-items:start}.order-items{margin:1.5rem 0}.order-items>div,.summary-line{display:flex;justify-content:space-between;padding:.8rem 0;border-bottom:1px solid var(--line)}.total{display:flex;justify-content:space-between;border-top:2px solid var(--ink);padding:1rem 0;font-size:1.1rem}.note,.pickup-box{background:#f7f4ee;padding:1rem;border-radius:12px}.actions{display:flex;gap:.75rem;align-items:end;margin-top:1.5rem;flex-wrap:wrap}.accept-form{display:flex;gap:.75rem;align-items:end}
.mobile-owner-bar,.mobile-order-toggle,.mobile-cart-bar{display:none}
.storefront{max-width:1320px;margin:0 auto;padding:0 1.25rem 3rem}.store-header{height:84px;display:flex;align-items:center;justify-content:space-between}.store-name{display:flex;align-items:center;gap:.75rem}.store-name strong,.store-name small{display:block}.store-name small{color:var(--muted);margin-top:.2rem}.seal{width:42px;height:42px;border-radius:50%;background:#171612;color:var(--gold);display:grid;place-items:center;font-size:1.2rem;font-weight:900}.header-actions{display:flex;gap:.6rem;align-items:center}.language,.cart-pill{padding:.65rem .85rem;border:1px solid var(--line);border-radius:999px;font-weight:800;font-size:.85rem}.cart-pill{background:var(--ink);color:#fff}.store-hero{min-height:310px;border-radius:24px;background:linear-gradient(115deg,#1b1915 0%,#2b261d 58%,#886521 100%);color:#fff;padding:3rem;display:grid;grid-template-columns:1.3fr .7fr;align-items:center;overflow:hidden}.store-hero h1{font-family:Georgia,Tahoma,serif;font-size:clamp(2.2rem,5vw,4.5rem);line-height:1.02;max-width:800px;margin:.8rem 0 1rem}.store-hero p{color:#d6d1c7}.store-hero .address{font-size:.85rem}.open-label{background:#dbaf50;color:#221c10;border-radius:999px;padding:.45rem .7rem;font-size:.75rem;font-weight:900}.hero-pattern{display:grid;gap:.3rem;transform:rotate(-8deg);opacity:.2;font-size:2.8rem;font-weight:900}.category-nav{display:flex;gap:.5rem;padding:1rem 0;overflow:auto;position:sticky;top:0;background:var(--paper);z-index:10}.category-nav a{white-space:nowrap;background:#fff;border:1px solid var(--line);padding:.55rem .9rem;border-radius:999px;font-weight:700}.store-layout{display:grid;grid-template-columns:1fr 310px;gap:1.25rem}.menu-category{padding:1.5rem 0}.menu-category h2{font-size:2rem}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.product-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:1rem;display:grid;grid-template-columns:86px 1fr auto;gap:1rem;min-height:150px}.product-icon{width:86px;height:86px;border-radius:14px;background:#f1dfb7;color:var(--gold-dark);display:grid;place-items:center;font-size:1.4rem}.product-copy h3{margin-bottom:.35rem}.product-copy p{font-size:.85rem;color:var(--muted);line-height:1.45;margin-bottom:.8rem}.add-form{display:flex;flex-direction:column;gap:.6rem;align-items:end}.round-add{border:0;background:var(--ink);color:white;width:38px;height:38px;border-radius:50%;font-size:1.3rem;cursor:pointer}.round-add:disabled{opacity:.35}.basket-summary{background:#fff;border:1px solid var(--line);border-radius:18px;padding:1.25rem;height:max-content;position:sticky;top:70px}.payment-note{font-size:.8rem;color:var(--muted);text-align:center;margin:1rem 0 0}.checkout-page{max-width:1100px;margin:0 auto;padding:2rem 1rem}.checkout-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:1rem}.pickup-box{display:grid;gap:.3rem;margin-top:1rem}.pickup-box small{color:var(--muted)}.confirmation{min-height:100vh;display:grid;place-items:center;padding:2rem;background:radial-gradient(circle at top,#ead9ac,transparent 35%),var(--paper)}.confirmation-card{width:min(600px,100%);background:#fff;border:1px solid var(--line);border-radius:24px;padding:2.5rem;text-align:center;box-shadow:var(--shadow)}.confirmation-icon{width:70px;height:70px;background:#e7f5ee;color:var(--green);display:grid;place-items:center;border-radius:50%;font-size:2rem;margin:0 auto 1.2rem}.confirmation-actions{display:flex;justify-content:center;gap:.7rem;margin-top:1.5rem}
[dir=rtl] body{font-family:Tahoma,Arial,sans-serif}[dir=rtl] .category-block h3 span{float:left}

/* Admin menu management and storefront product photography */
.product-photo{width:86px;height:86px;object-fit:cover;border-radius:14px;display:block}.product-info{margin:.5rem 0 .7rem;font-size:.82rem;color:var(--muted)}.product-info summary{cursor:pointer;color:var(--gold-dark);font-weight:800}.product-info p{margin:.4rem 0 0;line-height:1.5}.product-admin-info{display:flex;align-items:center;gap:.75rem;min-width:0}.product-admin-thumb{width:48px;height:48px;border-radius:10px;object-fit:cover;flex:0 0 48px}.product-editor{grid-column:1/-1;border-top:1px solid var(--line);padding-top:.6rem}.product-editor summary{cursor:pointer;font-weight:800;color:var(--gold-dark)}.product-editor form{margin-top:.75rem}.image-preview{width:120px;height:90px;object-fit:cover;border-radius:12px;display:block}.upload-help{font-size:.78rem;color:var(--muted)}
@media(max-width:900px){
 .dashboard{grid-template-columns:1fr}.sidebar{display:none}.desktop-only{display:none!important}
 .mobile-owner-bar{display:flex;position:sticky;top:0;z-index:30;align-items:center;justify-content:space-between;gap:.75rem;background:#181714;color:#fff;padding:max(.65rem,env(safe-area-inset-top)) 1rem .65rem;box-shadow:0 5px 20px rgba(0,0,0,.16)}
 .mobile-owner-brand{display:flex;align-items:center;gap:.55rem;min-width:0}.mobile-owner-brand .seal{width:36px;height:36px;flex:0 0 36px}.mobile-owner-brand strong,.mobile-owner-brand small{display:block}.mobile-owner-brand small{max-width:145px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#aaa;font-size:.68rem;margin-top:.1rem}
 .mobile-owner-bar nav{display:flex;align-items:center;gap:.2rem}.mobile-owner-bar nav a{min-height:44px;display:grid;place-items:center;padding:.55rem .65rem;border-radius:9px;color:#aaa;font-size:.78rem;font-weight:800}.mobile-owner-bar nav a.active{background:#fff;color:#171612}
 .mobile-order-toggle{display:flex;align-items:center;justify-content:space-between;gap:.75rem;background:#fff;border:1px solid var(--line);border-radius:14px;padding:.75rem;margin-bottom:1rem}.mobile-order-toggle span{display:flex;align-items:center;gap:.5rem}.mobile-order-toggle .status-dot{display:inline-block;flex:0 0 8px}
 .metrics,.two-col,.checkout-grid,.store-layout{grid-template-columns:1fr}.basket-summary{position:static}.product-grid{grid-template-columns:1fr}.order-row{grid-template-columns:1fr auto;min-height:92px}.order-row>*:nth-child(3){grid-column:1}.store-hero{grid-template-columns:1fr;padding:2rem}.hero-pattern{display:none}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}
}
@media(max-width:560px){
 input,select,textarea{font-size:16px;min-height:48px;padding:.75rem}.button{min-height:46px}.button.tiny{min-height:42px}
 .mobile-owner-bar{padding-left:.7rem;padding-right:.7rem}.mobile-owner-brand small{max-width:105px}.mobile-owner-bar nav a{padding:.5rem;font-size:.72rem}
 .dashboard-main{padding:1rem .75rem 2rem}.page-header{align-items:start;flex-direction:column;margin-bottom:1rem}.page-header h1{font-size:1.7rem;line-height:1.12}.page-header .muted{font-size:.82rem;margin-bottom:0}
 .metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem}.metric{padding:.75rem .55rem;border-radius:13px}.metric span{font-size:.67rem;line-height:1.25;min-height:2.5em}.metric strong{font-size:1.25rem;margin-top:.35rem}
 .panel{border-radius:14px}.panel.padded{padding:1rem}.panel-heading{padding:.85rem 1rem}.panel-heading h2{font-size:1.15rem}.panel-heading>span{font-size:.75rem}.order-row{padding:.9rem 1rem;gap:.45rem .75rem}.order-row .order-number{font-size:.78rem;color:var(--muted)}.order-row>strong:last-child{grid-column:2;grid-row:1;font-size:.9rem}.order-row .badge{grid-row:3}.order-row>span:nth-child(2){grid-column:1/-1}.order-row>span:nth-child(2) strong{font-size:1.05rem}
 .storefront{padding:0 .75rem calc(6rem + env(safe-area-inset-bottom))}.store-header{height:auto;padding:.75rem 0;gap:.5rem}.store-name{gap:.5rem;min-width:0}.store-name strong{font-size:.9rem}.store-name small{display:none}.seal{width:38px;height:38px;flex:0 0 38px}.header-actions{gap:.35rem}.language,.cart-pill{min-height:44px;display:grid;place-items:center;font-size:.72rem;padding:.55rem .65rem}.cart-pill{display:none}
 .store-hero{min-height:230px;padding:1.5rem;border-radius:18px}.store-hero h1{font-size:2rem;line-height:1.08}.store-hero p{font-size:.9rem}.category-nav{margin:0 -.75rem;padding:.75rem;scrollbar-width:none}.category-nav::-webkit-scrollbar{display:none}.category-nav a{min-height:42px;display:grid;place-items:center}
 .menu-category{padding:1rem 0}.menu-category h2{font-size:1.6rem}.product-grid{gap:.65rem}.product-card{grid-template-columns:44px 1fr;gap:.75rem;min-height:0;padding:.85rem}.product-icon{width:58px;height:58px}.product-photo{width:58px;height:58px}.product-card{grid-template-columns:58px 1fr;gap:.75rem}.product-copy{min-width:0}.product-copy h3{font-size:1rem}.product-copy p{margin-bottom:.55rem}.add-form{grid-column:1/-1;display:grid;grid-template-columns:1fr 48px;align-items:center}.add-form select{min-width:0}.round-add{width:48px;height:48px;justify-self:end}.basket-summary{display:none}
 .mobile-cart-bar{display:flex;position:fixed;z-index:25;left:.75rem;right:.75rem;bottom:max(.75rem,env(safe-area-inset-bottom));min-height:58px;align-items:center;justify-content:space-between;gap:1rem;background:var(--ink);color:#fff;border:1px solid #3c3932;border-radius:16px;padding:.8rem 1rem;box-shadow:0 12px 35px rgba(0,0,0,.28)}
 .checkout-page{padding:1rem .75rem calc(2rem + env(safe-area-inset-bottom))}.checkout-grid{display:flex;flex-direction:column}.checkout-grid>aside{order:-1}.checkout-page h1{font-size:1.7rem}.checkout-page .stack .button.primary{position:sticky;bottom:max(.75rem,env(safe-area-inset-bottom));z-index:5;box-shadow:0 8px 24px rgba(0,0,0,.2)}
 .order-items>div,.summary-line{gap:1rem}.order-items>div>span{min-width:0}.order-items>div>strong{white-space:nowrap}.narrow-page{padding:1rem .75rem 2rem}.order-detail-head{flex-direction:column;gap:.75rem}.order-detail-head h1{font-size:1.65rem}.actions,.accept-form{align-items:stretch;flex-direction:column}.actions form,.actions .button,.accept-form label{width:100%}.menu-admin-row{grid-template-columns:1fr auto;gap:.6rem}.menu-admin-row form{grid-column:1/-1}.menu-admin-row .button{width:100%}.category-block{padding:1rem}.category-block h3{display:flex;justify-content:space-between;gap:.75rem}.category-block h3 span{float:none}.confirmation{padding:1rem}.confirmation-card{padding:1.5rem 1rem}.confirmation-actions{flex-direction:column}.auth-shell{padding:1rem}.auth-card{padding:1.5rem 1rem;border-radius:18px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Customer page keyboard visibility and mobile menu clarity */
:focus-visible{outline:3px solid #a66e00;outline-offset:3px}
@media(max-width:560px){
 .product-card{grid-template-columns:72px minmax(0,1fr);gap:.85rem}
 .product-photo,.product-icon{width:72px;height:72px}
 .add-form{grid-template-columns:minmax(0,1fr) 48px}
}

.tracking-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.25rem;list-style:none;padding:0;margin:1.4rem 0 1.2rem}
.tracking-steps li{position:relative;display:grid;justify-items:center;gap:.45rem;color:var(--muted);font-size:.72rem;font-weight:700;text-align:center;line-height:1.25}
.tracking-steps li:before{content:"";width:12px;height:12px;border-radius:50%;background:#e5dfd3;box-shadow:0 0 0 4px #f7f4ee}
.tracking-steps li.done{color:var(--green)}
.tracking-steps li.done:before{background:var(--green);box-shadow:0 0 0 4px #e7f5ee}
.tracking-steps li[aria-current=step]{color:var(--ink);font-weight:900}
.tracking-steps li[aria-current=step]:before{background:var(--gold);box-shadow:0 0 0 4px #f7edda}
@media(max-width:560px){.tracking-steps{gap:0}.tracking-steps li{font-size:.64rem}.confirmation-card{max-width:480px}}

/* Mobile storefront refinements: compact cards, readable copy, and RTL-safe controls */
@media(max-width:700px){
 .storefront{padding-left:1rem;padding-right:1rem}
 .store-header{min-height:70px;height:auto;padding:.7rem 0}
 .store-hero{min-height:0;padding:1.5rem}
 .store-hero h1{font-size:clamp(1.8rem,8vw,2.6rem);overflow-wrap:anywhere}
 .category-nav{scroll-padding-inline:1rem}
 .product-card{grid-template-columns:64px minmax(0,1fr);grid-template-rows:auto auto;align-items:start;gap:.65rem .8rem;padding:.8rem}
 .product-photo,.product-icon{width:64px;height:64px}
 .product-copy{min-width:0;overflow-wrap:anywhere}
 .product-copy h3{font-size:.98rem;line-height:1.3;overflow-wrap:anywhere}
 .product-copy p{font-size:.82rem;line-height:1.45;overflow-wrap:anywhere}
 .product-copy>strong{display:inline-block;margin-top:.15rem}
 .product-info{overflow-wrap:anywhere}
 .add-form{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) 48px;align-items:center;gap:.6rem;width:100%;margin-top:.05rem}
 .add-form select{min-width:0}
 .round-add{width:48px;height:48px;justify-self:end}
 .mobile-cart-bar{padding:.75rem .9rem;min-height:60px;bottom:max(.6rem,env(safe-area-inset-bottom))}
}
@media(max-width:380px){
 .storefront{padding-left:.65rem;padding-right:.65rem}
 .store-hero{padding:1.2rem;border-radius:16px}
 .store-hero h1{font-size:1.8rem}
 .category-nav{margin-left:-.65rem;margin-right:-.65rem;padding:.65rem}
 .product-grid{gap:.55rem}
 .product-card{grid-template-columns:56px minmax(0,1fr);gap:.6rem;padding:.7rem;border-radius:14px}
 .product-photo,.product-icon{width:56px;height:56px;border-radius:12px}
 .product-copy h3{font-size:.92rem}
 .product-copy p{font-size:.78rem}
 .language{padding:.5rem}
}
[dir=rtl] .product-card{direction:rtl}
[dir=rtl] .product-copy{text-align:start}
[dir=rtl] .add-form{direction:rtl}
[dir=rtl] .round-add{justify-self:start}
@media(max-width:560px){
 [dir=rtl] .mobile-cart-bar{direction:rtl}
 [dir=rtl] .store-header{direction:rtl}
 [dir=rtl] .category-nav{direction:rtl}
}

/* Product promotions */
.special-offers{margin:1.2rem 0 1.5rem;padding:1.25rem;background:#fffaf0;border:1px solid #ead7a8;border-radius:18px}
.special-offers-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.special-offers-heading .eyebrow{margin-bottom:.25rem}
.special-offers-heading h2{margin:0;font-size:1.6rem}
.special-offers-empty{margin:0;color:var(--muted)}
.offer-badge{display:inline-flex;width:max-content;max-width:100%;align-items:center;padding:.3rem .55rem;background:#fff1d6;color:#855600;border-radius:999px;font-size:.72rem;font-weight:900;overflow-wrap:anywhere}
.product-price{display:flex;align-items:baseline;gap:.55rem;flex-wrap:wrap}
.product-price del{color:var(--muted);font-size:.84rem}
.product-price strong{color:var(--green)}
.product-card.on-offer{border-color:#ead7a8}
[dir=rtl] .special-offers-heading{direction:rtl}
@media(max-width:560px){
 .special-offers{margin:1rem 0 1.2rem;padding:.9rem;border-radius:16px}
 .special-offers-heading{align-items:start;flex-direction:column;gap:.2rem;margin-bottom:.75rem}
 .special-offers-heading h2{font-size:1.4rem}
}

/* Keep hidden cart controls hidden when AJAX updates their state */
.mobile-cart-bar[hidden],.cart-pill[hidden],#cart-feedback[hidden]{display:none!important}

/* Keep the current menu category visible at the start of the swipeable chip row */
.category-nav{overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none;scroll-behavior:auto;touch-action:pan-x pan-y;scroll-snap-type:x proximity}
.category-nav::-webkit-scrollbar{display:none}
.category-nav>a{flex:0 0 auto;scroll-snap-align:start}
.category-nav>a[aria-current=location]{background:var(--ink);border-color:var(--ink);color:#fff}

/* Editable customer cart */
.editable-cart{margin:.8rem 0}
.cart-line{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 0;border-bottom:1px solid var(--line)}
.cart-line-copy{display:grid;gap:.25rem;min-width:0}
.cart-line-name{font-weight:800;overflow-wrap:anywhere}
.cart-line-copy small{color:var(--muted);font-size:.78rem}
.cart-line-total{font-size:.95rem}
.cart-line-actions{display:flex;align-items:center;gap:.65rem;flex:0 0 auto}
.quantity-control{display:flex;align-items:center;gap:.55rem;border:1px solid var(--line);border-radius:999px;padding:.2rem;background:#fff}
.quantity-control button{border:0;background:#f5f2eb;border-radius:50%;width:36px;height:36px;font-size:1.2rem;cursor:pointer}
.quantity-control button:disabled{opacity:.4;cursor:default}
.quantity-control span{min-width:1.5rem;text-align:center;font-weight:800}
.cart-remove{border:0;background:none;color:var(--red);font-weight:800;padding:.5rem;cursor:pointer}
.cart-continue{margin:1rem 0}
.cart-empty{padding:1rem 0}
[dir=rtl] .cart-line{direction:rtl}
@media(max-width:560px){
 .cart-line{align-items:stretch;flex-direction:column;gap:.6rem;padding:1rem 0}
 .cart-line-actions{justify-content:space-between}
 .cart-remove{min-height:44px}
}


/* Menu administration: clear creation steps and focused edit panels */
.admin-menu-page{max-width:1480px}
.admin-menu-header{align-items:center}
.admin-menu-header-actions{display:flex;align-items:center;gap:.65rem}
.menu-counts{display:flex;gap:.55rem;margin-top:1rem}
.menu-counts span{display:inline-flex;align-items:center;gap:.35rem;background:#fff;border:1px solid var(--line);border-radius:999px;padding:.45rem .75rem;color:var(--muted);font-size:.78rem}
.menu-counts strong{color:var(--ink)}
.admin-menu-create-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:1rem;align-items:start;margin-bottom:2rem}
.admin-create-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:1.35rem;display:grid;grid-template-columns:42px minmax(0,1fr);gap:1rem;box-shadow:0 8px 26px rgba(30,25,15,.035)}
.admin-create-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#f7edda;color:var(--gold-dark);font-size:1.25rem;font-weight:900}
.admin-create-content{min-width:0}
.admin-create-content .eyebrow{margin-bottom:.35rem}
.admin-create-content h2{font-size:1.2rem;margin:0 0 .3rem}
.admin-create-content>p.muted{font-size:.86rem;margin-bottom:1rem}
.admin-create-form{display:grid;gap:.85rem}
.admin-create-form label,.category-edit-form label,.admin-edit-form label{display:grid;gap:.4rem;font-weight:750;font-size:.82rem;min-width:0}
.admin-form-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.admin-create-form textarea,.admin-edit-form textarea{min-height:82px}
.admin-create-form .button{justify-self:start;min-width:170px}
.admin-extra-fields{border-top:1px solid var(--line);padding-top:.7rem}
.admin-extra-fields>summary{cursor:pointer;color:var(--gold-dark);font-weight:800;font-size:.84rem;padding:.35rem 0}
.admin-extra-fields[open]{display:grid;gap:.75rem}
.admin-menu-list{display:grid;gap:.85rem}
.admin-menu-list-header{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin:0 0 .25rem}
.admin-menu-list-header .eyebrow{margin:0 0 .3rem}
.admin-menu-list-header h2{margin:0;font-size:1.5rem}
.menu-search{width:min(360px,100%);position:relative}
.menu-search>span{position:absolute;left:.85rem;top:50%;transform:translateY(-50%);font-size:1.3rem;color:var(--muted)}
.menu-search input{padding-left:2.4rem;background:#fff}
.admin-category-card{background:#fff;border:1px solid var(--line);border-radius:17px;overflow:hidden}
.admin-category-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#fbfaf7;padding:1rem 1.2rem;border-bottom:1px solid var(--line);flex-wrap:wrap}
.admin-category-title{display:flex;align-items:center;gap:.85rem;min-width:0}
.category-order{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#eee9df;color:var(--gold-dark);font-weight:900;font-size:.76rem;flex:0 0 38px}
.admin-category-title h3{font-size:1.05rem;margin:0 0 .2rem}
.admin-category-title p{font-size:.76rem;color:var(--muted);margin:0}
.category-edit{margin-left:auto}
.category-edit>summary,.product-editor>summary{list-style:none;cursor:pointer}
.category-edit>summary::-webkit-details-marker,.product-editor>summary::-webkit-details-marker{display:none}
.category-edit[open]{width:100%;margin:0;padding-top:.9rem;border-top:1px solid var(--line)}
.category-edit-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) auto;gap:.75rem;align-items:end}
.admin-products-list{padding:0 1rem}
.admin-product-card{padding:1rem 0;border-bottom:1px solid var(--line)}
.admin-product-card:last-child{border-bottom:0}
.admin-product-main{display:grid;grid-template-columns:76px minmax(0,1fr) auto;align-items:start;gap:1rem}
.admin-product-image{width:76px;height:76px;border-radius:14px;object-fit:cover;border:1px solid var(--line)}
.admin-product-placeholder{display:grid;place-items:center;background:#f5f0e6;color:var(--gold-dark);font-size:1.5rem}
.admin-product-copy{min-width:0}
.admin-product-title-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.admin-product-title-row h4{font-size:.98rem;line-height:1.3;margin:0}
.admin-product-secondary{color:var(--muted);font-size:.78rem;margin:.18rem 0 .4rem}
.admin-product-description{color:var(--muted);font-size:.8rem;line-height:1.45;margin:.2rem 0 .5rem;max-width:720px}
.admin-product-meta{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;font-size:.82rem}
.admin-product-meta>strong{font-size:.92rem}.admin-product-meta del{font-size:.76rem;color:var(--muted)}
.admin-product-meta>span{font-size:.73rem;font-weight:800}
.admin-product-meta .is-available{color:var(--green)}
.admin-product-meta .is-unavailable{color:var(--red)}
.admin-offer-pill{background:#fff1d6;color:#855600;border-radius:999px;padding:.22rem .5rem;font-size:.68rem;font-weight:900}
.admin-product-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;justify-content:end}.product-editor{margin-top:.5rem}
.admin-product-actions form{margin:0}
.admin-product-actions .button{white-space:nowrap}
.product-editor[open]{width:100%;grid-column:1/-1}
.admin-edit-form{display:grid;gap:.85rem;background:#fbfaf7;border:1px solid var(--line);border-radius:14px;padding:1rem;margin-top:.2rem}
.admin-edit-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--line)}
.admin-edit-heading .eyebrow{margin:0 0 .2rem}
.admin-edit-heading h5{font-size:1rem;margin:0}
.admin-edit-heading>span{font-size:.76rem;color:var(--muted);text-align:end}
.price-pair{grid-template-columns:repeat(2,minmax(0,1fr))}
.admin-current-image{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.admin-current-image .check{display:flex!important;align-items:center;gap:.5rem}
.admin-current-image .check input{width:18px;min-height:18px}
.admin-edit-actions{display:flex;justify-content:end}
.admin-category-empty,.admin-menu-empty,.admin-search-empty{text-align:center;padding:1.5rem;color:var(--muted)}
.admin-menu-empty{background:#fff;border:1px dashed #d8d1c4;border-radius:18px;padding:2.5rem 1rem}
.admin-menu-empty>div{font-size:2rem;color:var(--gold-dark);margin-bottom:.5rem}
.admin-menu-empty h3{color:var(--ink);margin-bottom:.4rem}
.admin-menu-empty p{margin-bottom:1rem}
.admin-search-empty{background:#fff;border:1px solid var(--line);border-radius:14px}
.admin-menu-page [hidden]{display:none!important}
[dir=rtl] .admin-product-main,[dir=rtl] .admin-category-header{direction:rtl}
[dir=rtl] .admin-product-actions{justify-content:start}
[dir=rtl] .menu-search>span{left:auto;right:.85rem}
[dir=rtl] .menu-search input{padding-left:.75rem;padding-right:2.4rem}
[dir=rtl] .admin-edit-heading{direction:rtl}
@media(max-width:1100px){
 .admin-menu-create-grid{grid-template-columns:1fr}
 .admin-create-card{grid-template-columns:40px minmax(0,1fr)}
}
@media(max-width:700px){
 .admin-menu-header{align-items:flex-start}
 .admin-menu-header-actions{width:100%;justify-content:space-between}
 .admin-menu-list-header{align-items:stretch;flex-direction:column}
 .menu-search{width:100%}
 .admin-category-header{padding:.9rem}
 .admin-products-list{padding:0 .85rem}
 .admin-product-main{grid-template-columns:60px minmax(0,1fr);gap:.7rem}
 .admin-product-image{width:60px;height:60px;border-radius:12px}
 .admin-product-copy{grid-column:2}
 .admin-product-actions{grid-column:1/-1;justify-content:start;padding-top:.15rem}
 .product-editor[open]{grid-column:1/-1}
 .admin-edit-heading{align-items:flex-start;flex-direction:column}
 .admin-edit-heading>span{text-align:start}
 .category-edit{margin:0}
 .category-edit-form{grid-template-columns:1fr}
 .admin-edit-actions .button{width:100%}
}
@media(max-width:560px){
 .admin-menu-page{padding-left:.75rem;padding-right:.75rem}
 .admin-menu-create-grid{gap:.75rem;margin-bottom:1.4rem}
 .admin-create-card{grid-template-columns:1fr;padding:1rem;border-radius:15px}
 .admin-create-icon{width:36px;height:36px}
 .admin-create-content h2{font-size:1.1rem}
 .admin-form-pair{grid-template-columns:1fr}
 .admin-create-form .button{width:100%}
 .menu-counts{margin-top:.75rem}
 .admin-category-header{align-items:flex-start}
 .admin-category-title{align-items:flex-start}
 .admin-category-title p{line-height:1.4}
 .admin-product-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}
 .admin-product-actions>form{width:100%}
 .admin-product-actions>form .button,.product-editor>summary{width:100%;justify-content:center}
 .category-edit{width:100%}
 .category-edit>summary{width:100%;justify-content:center}
 .category-edit-form .button{width:100%}
 .admin-products-list{padding:0 .7rem}
 .admin-edit-form{padding:.75rem}
}

/* Weekly order hours */
.opening-hours-panel{margin-bottom:1rem}
.opening-hours-panel .panel-heading{gap:1rem}
.opening-hours-panel .panel-heading h2{margin:0}
.opening-hours-panel .panel-heading .eyebrow{margin:0 0 .2rem}
.opening-hours-content{padding:1.1rem 1.25rem 1.3rem}
.opening-hours-content>p.muted{font-size:.88rem;margin-bottom:.8rem}
.opening-hours-notice{padding:.7rem .85rem;border:1px solid #ead7a8;background:#fffaf0;color:#735219;border-radius:10px;font-size:.83rem}
.opening-status{padding:.4rem .7rem;border-radius:999px;font-size:.75rem;font-weight:850;white-space:nowrap}
.opening-status.is-open{background:#e7f5ee;color:var(--green)}
.opening-status.is-closed{background:#f4eee6;color:var(--muted)}
.opening-hours-form{display:grid;gap:.8rem}
.opening-hours-list{display:grid;gap:.4rem}
.opening-hours-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.5rem .65rem;border:1px solid var(--line);border-radius:12px;background:#fff}
.opening-day{display:flex!important;align-items:center;gap:.65rem;min-width:125px;font-weight:800!important}
.opening-day input[type=checkbox]{width:21px;height:21px;min-height:21px;padding:0;accent-color:var(--green)}
.opening-time-range{display:grid;grid-template-columns:minmax(110px,1fr) 20px minmax(110px,1fr);align-items:center;gap:.6rem;width:min(420px,65%)}
.opening-time-range label{display:flex;align-items:center;gap:.45rem;font-size:.76rem!important;color:var(--muted)}
.opening-time-range label input{min-height:42px;padding:.45rem .55rem}
.opening-time-separator{text-align:center;color:var(--muted)}
.opening-hours-help{font-size:.76rem;color:var(--muted);margin:0}
.opening-hours-form>.button{justify-self:start;min-width:200px}
.orders-closed-note{padding:.85rem 1rem;border-radius:12px;border:1px solid #ead7a8;background:#fffaf0;color:#735219;font-size:.87rem;line-height:1.5}
[dir=rtl] .opening-hours-row,[dir=rtl] .opening-time-range{direction:rtl}
@media(max-width:700px){
 .opening-hours-content{padding:.9rem}
 .opening-hours-row{align-items:stretch;flex-direction:column;gap:.4rem}
 .opening-day{min-height:42px}
 .opening-time-range{width:100%;grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr)}
 .opening-time-range label{display:grid;gap:.25rem}
 .opening-time-range label input{width:100%}
 .opening-hours-form>.button{width:100%}
}

/* Restaurant sales statistics */
.stats-page{max-width:1440px}
.stats-filter{background:#fff;border:1px solid var(--line);border-radius:16px;padding:1rem 1.15rem;margin:0 0 1rem}
.stats-filter-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.85rem}
.stats-filter-heading>div{display:grid;gap:.2rem}
.stats-filter-heading>div>strong{font-size:.95rem}
.stats-filter-heading>div>span,.stats-timezone{color:var(--muted);font-size:.78rem}
.stats-filter-controls{display:grid;grid-template-columns:1.1fr 1fr 1fr 1.2fr;gap:.7rem}
.stats-filter-controls label{display:grid;gap:.35rem;font-size:.75rem;font-weight:800;min-width:0}
.stats-filter-controls input,.stats-filter-controls select{min-width:0;min-height:44px;padding:.55rem .65rem}
.stats-timezone{margin:.65rem 0 0}
.stats-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin-bottom:1rem}
.stats-kpi{display:grid;gap:.35rem;align-content:start;padding:1.1rem;background:#fff;border:1px solid var(--line);border-radius:16px;min-width:0}
.stats-kpi>span{color:var(--muted);font-size:.78rem;font-weight:700}
.stats-kpi>strong{font-size:clamp(1.35rem,2vw,1.9rem);line-height:1.1;overflow-wrap:anywhere}
.stats-kpi>small{font-size:.72rem;color:var(--muted)}
.stats-kpi-featured{background:#1b1915;color:#fff;border-color:#1b1915}
.stats-kpi-featured>span,.stats-kpi-featured>small{color:#ddd4c2}
.stats-panel{margin-bottom:1rem}
.stats-panel .panel-heading{align-items:center}
.stats-panel .panel-heading .eyebrow{margin:0 0 .25rem}
.stats-panel .panel-heading h2{margin:0;font-size:1.2rem}
.stats-panel .panel-heading>span{font-size:.75rem;color:var(--muted)}
.sales-chart-wrap{padding:1rem 1.15rem 1.1rem}
.sales-chart-scroll{overflow-x:auto;overscroll-behavior-inline:contain}
.sales-chart{height:230px;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(25px,1fr);gap:.35rem;align-items:stretch;min-width:100%}
.sales-chart-column{display:grid;grid-template-rows:1fr auto;gap:.45rem;min-width:22px;text-align:center}
.sales-bar-track{height:100%;display:flex;align-items:end;justify-content:center;border-bottom:1px solid var(--line);background:linear-gradient(to top,rgba(200,155,60,.035),transparent)}
.sales-bar{display:block;width:min(70%,24px);min-height:0;border-radius:5px 5px 0 0;background:linear-gradient(180deg,#d8b768,#9b7227);transition:height .25s ease}
.sales-chart-column small{font-size:.63rem;color:var(--muted);white-space:nowrap}
.sales-chart-legend{display:flex;align-items:center;gap:.45rem;margin-top:.7rem;font-size:.75rem;color:var(--muted)}
.sales-chart-legend i{width:9px;height:9px;border-radius:3px;background:var(--gold)}
.stats-empty{padding:2rem;text-align:center;color:var(--muted)}
.stats-table-scroll{overflow-x:auto}
.stats-table{width:100%;border-collapse:collapse;text-align:start}
.stats-table th,.stats-table td{padding:.8rem 1rem;border-bottom:1px solid var(--line);text-align:start}
.stats-table th{background:#fbfaf7;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.04em}
.stats-table td{font-size:.86rem}
.stats-table tbody tr:last-child td{border-bottom:0}
.stats-table td:nth-child(2){min-width:220px}
.stats-table td:nth-child(2) strong,.stats-table td:nth-child(2) small{display:block}
.stats-table td:nth-child(2) small{font-size:.72rem;color:var(--muted);margin-top:.18rem}
.stats-rank{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:#f4eee2;color:var(--gold-dark);font-size:.73rem;font-weight:900}
.stats-fulfillment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}
.stats-fulfillment-card{padding:1rem 1.2rem;display:grid;grid-template-columns:1fr auto;align-items:center;gap:.15rem .8rem}
.stats-fulfillment-card>span{color:var(--muted);font-size:.8rem}
.stats-fulfillment-card>strong{grid-column:2;grid-row:1/3;font-size:1.6rem}
.stats-fulfillment-card>small{font-weight:800}
.stats-footnote{margin:.75rem 0 0;font-size:.75rem;color:var(--muted)}
[dir=rtl] .stats-page{direction:rtl}
[dir=rtl] .stats-filter-heading{direction:rtl}
[dir=rtl] .stats-table{text-align:right}
@media(max-width:900px){
 .stats-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
 .stats-filter-controls{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
 .stats-page{padding:1rem .75rem 2rem}
 .stats-filter{padding:.85rem;border-radius:14px}
 .stats-filter-heading{align-items:flex-start}
 .stats-filter-heading .button{min-height:44px}
 .stats-filter-controls{grid-template-columns:1fr 1fr;gap:.55rem}
 .stats-filter-controls label:first-child,.stats-filter-controls label:last-child{grid-column:1/-1}
 .stats-kpis{gap:.55rem}
 .stats-kpi{padding:.85rem .7rem;border-radius:13px}
 .stats-kpi>strong{font-size:1.35rem}
 .stats-kpi>span{font-size:.7rem}
 .stats-panel .panel-heading{padding:.85rem 1rem}
 .stats-panel .panel-heading h2{font-size:1.05rem}
 .sales-chart-wrap{padding:.8rem}
 .sales-chart{height:190px;grid-auto-columns:26px;min-width:max-content}
 .stats-table th,.stats-table td{padding:.7rem .55rem;font-size:.77rem}
 .stats-table th{font-size:.63rem}
 .stats-table td:nth-child(2){min-width:140px}
 .stats-fulfillment-grid{gap:.55rem}
 .stats-fulfillment-card{padding:.85rem}
 .mobile-owner-bar nav a[aria-label="Statistiken"]{font-size:1.1rem}
}

.stats-trend{display:inline-flex;width:max-content;max-width:100%;padding:.28rem .48rem;border-radius:999px;font-size:.68rem;font-weight:850}
.stats-trend.trend-up{background:#e7f5ee;color:var(--green)}
.stats-trend.trend-down{background:#fff0ee;color:var(--red)}
.stats-kpi-featured .stats-trend.trend-up{background:#153e2c;color:#b5efce}
.stats-kpi-featured .stats-trend.trend-down{background:#51231f;color:#ffc3ba}

@media(max-width:560px){
 .mobile-owner-bar nav{gap:0;flex-shrink:0}
 .mobile-owner-bar nav a{padding:.4rem;font-size:.69rem}
}

/* Mobile owner navigation: keep brand shortcuts above a separate admin menu row */
.mobile-owner-topbar{display:contents}
.mobile-owner-tools{display:contents}
.mobile-owner-tools a{color:#aaa}
@media(max-width:900px){
 .mobile-owner-bar{display:grid;grid-template-columns:minmax(0,1fr);gap:.5rem;padding:max(.6rem,env(safe-area-inset-top)) .85rem .65rem}
 .mobile-owner-topbar{display:flex;align-items:center;justify-content:space-between;gap:.6rem;min-width:0}
 .mobile-owner-brand{flex:1 1 auto}
 .mobile-owner-tools{display:flex;align-items:center;gap:.35rem;flex:0 0 auto}
 .mobile-owner-tools>a{min-width:42px;min-height:42px;display:grid;place-items:center;padding:.45rem;border:1px solid #45423c;border-radius:10px;color:#eee;font-size:.82rem;font-weight:800}
 .mobile-owner-tools>a.language{border-color:#45423c}
 .mobile-owner-nav{display:flex;align-items:center;gap:.25rem;width:100%;min-width:0;padding:.22rem;background:#25231f;border:1px solid #36332d;border-radius:12px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}
 .mobile-owner-nav::-webkit-scrollbar{display:none}
 .mobile-owner-nav a{flex:1 0 auto;min-height:42px;display:flex;align-items:center;justify-content:center;padding:.45rem .75rem;border-radius:9px;color:#bbb;font-size:.77rem;font-weight:800;white-space:nowrap}
 .mobile-owner-nav a.active{background:#fff;color:#171612}
}
@media(max-width:560px){
 .mobile-owner-bar{padding-left:.7rem;padding-right:.7rem}
 .mobile-owner-brand small{max-width:min(36vw,145px)}
 .mobile-owner-nav{gap:.15rem}
 .mobile-owner-nav a{min-height:40px;padding:.4rem .55rem;font-size:.72rem}
}

/* Scheduled pickup selection */
.pickup-slot-help{display:block;color:var(--muted);font-size:.76rem;font-weight:500;line-height:1.4}


.store-hero .button { margin-top: 1rem; }
.reservations-panel { margin-bottom: 1.25rem; }
.reservation-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.75rem; align-items:center; padding:1rem; border-top:1px solid var(--line,#e8e4dc); }
.reservation-row small { display:block; margin-top:.35rem; color:var(--muted,#777); }
.reservation-row p { margin:.5rem 0 0; }
.reservation-actions { display:flex; gap:.5rem; grid-column:1/-1; flex-wrap:wrap; }
.reservation-form { max-width:720px; margin-inline:auto; }
@media(max-width:640px) {
    .reservation-row { grid-template-columns:1fr; }
    .reservation-actions { display:grid; grid-template-columns:1fr 1fr; }
    .reservation-actions form, .reservation-actions button { width:100%; }
}

.product-preparation-time { display:block; margin-top:.4rem; color:var(--muted,#716f6a); font-size:.82rem; }


.product-preparation-time { display:block; margin-top:.4rem; color:var(--muted,#716f6a); font-size:.82rem; line-height:1.4; }
.operations-settings { margin-block:1rem; padding:1.25rem; }
.capacity-form { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:.85rem; align-items:end; }
.capacity-form label { display:grid; gap:.4rem; font-weight:600; }
.capacity-form input, .capacity-form select { width:100%; min-width:0; }
.special-hours-manager { border-top:1px solid var(--line,#e8e4dc); margin-top:1.2rem; padding-top:1rem; }
.special-hours-manager h3 { margin:.2rem 0 .9rem; }
.special-hours-list { margin-top:.8rem; }
.special-hours-row { display:flex; justify-content:space-between; align-items:center; gap:.75rem; padding:.7rem 0; border-top:1px solid var(--line,#e8e4dc); }
.email-notice { margin-top:1rem; font-size:.85rem; }
@media(max-width:640px) {
    .operations-settings { padding:1rem; }
    .capacity-form { grid-template-columns:1fr; }
    .special-hours-row { align-items:flex-start; flex-direction:column; }
}


/* Refined customer workspace and staff controls */
.customer-menu-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;align-items:center;padding:1rem 0 .25rem}
.customer-menu-search,.order-search{display:flex;align-items:center;gap:.65rem;min-height:52px;padding:.25rem .9rem;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:0 4px 16px rgba(30,25,15,.035);color:var(--muted)}
.customer-menu-search>span,.order-search>span{font-size:1.45rem;line-height:1}
.customer-menu-search input,.order-search input{border:0!important;box-shadow:none!important;outline:0!important;padding:.5rem 0!important;background:transparent!important;min-width:0}
.customer-menu-search kbd{white-space:nowrap;color:#777;border:1px solid #e9e5dd;background:#faf9f6;border-radius:6px;padding:.2rem .4rem;font-size:.7rem}
.menu-filter-chip,.menu-expand-toggle{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:40px;padding:.5rem .8rem;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--ink);font-weight:750;cursor:pointer;white-space:nowrap}
.menu-filter-chip[aria-pressed=true],.menu-filter-chip.is-active{background:#201e19;color:#fff;border-color:#201e19}
.category-nav a{display:inline-flex;align-items:center;gap:.4rem}
.category-nav a span{display:inline-grid;place-items:center;min-width:1.25rem;height:1.25rem;padding:0 .25rem;border-radius:99px;background:#f1eee8;color:#777;font-size:.68rem}
.product-title-row{display:flex;align-items:start;justify-content:space-between;gap:.4rem}
.product-title-row h3{margin:0}
.favorite-toggle{flex:0 0 auto;width:34px;height:34px;display:grid;place-items:center;border:1px solid #eee9df;border-radius:50%;background:#fff;color:#a43d37;font-size:1.15rem;cursor:pointer}
.favorite-toggle[aria-pressed=true]{background:#fff0ee;border-color:#f2ceca}
.product-quantity{display:flex;align-items:center;justify-content:flex-end;gap:.25rem}
.product-quantity button{width:32px;height:32px;border:1px solid var(--line);border-radius:9px;background:#fff;font-size:1.1rem;cursor:pointer}
.product-quantity input{width:38px!important;height:32px;min-width:0;text-align:center;border:0;background:#f8f6f2;padding:.2rem!important;border-radius:8px}
.product-quantity input::-webkit-inner-spin-button,.product-quantity input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.customer-menu-empty,.order-search-empty{padding:1rem;border:1px dashed #d7d0c3;border-radius:14px;color:var(--muted);text-align:center}
.admin-menu-filters{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin:-.4rem 0 1rem}
.menu-expand-toggle{border:0;background:transparent;color:var(--muted)}
.order-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;align-items:center;padding:1rem 1.25rem}
.order-search{min-height:44px;box-shadow:none}
.order-filter-chips{display:flex;gap:.35rem;overflow-x:auto;scrollbar-width:none}
.order-filter-chips .menu-filter-chip{min-height:36px;padding:.4rem .65rem;font-size:.78rem}
.order-row[hidden],.product-card[hidden],.menu-category[hidden],.special-offers[hidden],.admin-category-card[hidden]{display:none!important}
@media(max-width:760px){
 .customer-menu-tools{grid-template-columns:minmax(0,1fr);padding-top:.75rem}
 .customer-menu-search{min-height:48px}
 .order-tools{grid-template-columns:minmax(0,1fr);padding:.85rem}
 .order-filter-chips{width:100%;padding-bottom:.15rem}
 .admin-menu-filters{overflow-x:auto;flex-wrap:nowrap;margin-inline:-.25rem;padding:.2rem .25rem .6rem}
 .admin-menu-filters .menu-filter-chip{font-size:.78rem}
}
@media(max-width:420px){
 .customer-menu-search kbd{display:none}
 .product-quantity button{width:38px;height:38px}
 .product-quantity input{height:38px}
}

@media(max-width:700px){
 .add-form select{grid-column:1/-1}
 .product-quantity{justify-content:flex-start}
}

/* Operational improvements for every restaurant tenant */
.promotion-schedule{display:grid;gap:.55rem;padding:.85rem;border:1px solid var(--line);background:#faf9f6;border-radius:12px}
.weekday-checks{display:flex;gap:.35rem;flex-wrap:wrap}
.weekday-checks label{display:flex!important;grid-template-columns:auto auto!important;align-items:center;gap:.3rem!important;padding:.35rem .5rem;border:1px solid var(--line);border-radius:99px;background:#fff;font-size:.75rem!important}
.weekday-checks input{width:auto}
.category-availability-form{display:flex;align-items:center}
.stats-filter-actions{display:flex;gap:.5rem;align-items:center}
.print-ticket-heading{display:none}
@media print{
 @page{margin:12mm}
 body{background:#fff!important;color:#000!important;font-size:11pt}
 .sidebar,.mobile-owner-bar,.page-header,.actions,.language,.button,.toast,.dashboard nav{display:none!important}
 .dashboard{display:block!important;min-height:0!important}
 .dashboard-main{padding:0!important}
 .panel,.print-ticket{border:0!important;box-shadow:none!important;background:#fff!important}
 .print-ticket-heading{display:flex;justify-content:space-between;padding-bottom:8mm;margin-bottom:5mm;border-bottom:1px solid #aaa;font-size:15pt}
}
@media(max-width:700px){
 .category-availability-form{flex:1}
 .category-availability-form .button{width:100%;min-height:40px}
 .stats-filter-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}
}

/* Multi-restaurant delivery, branding, and optimized menu media */
.upload-preview{margin:.45rem 0 .8rem}
.upload-preview[hidden]{display:none}
.upload-preview img{display:block;width:min(220px,100%);aspect-ratio:4/3;object-fit:cover;border:1px solid var(--line);border-radius:12px;background:#f7f5f0}


/* Restaurant OS product options */
.product-option-group{display:grid;grid-template-columns:1fr;gap:.5rem;margin:.75rem 0;padding:.75rem;border:1px solid var(--line,#dedbd3);border-radius:14px;min-width:0}.product-option-group legend{padding:0 .35rem;font-weight:700}.product-option-group legend span{font-size:.78em;color:var(--muted,#777)}.product-option-choice{display:flex;align-items:center;gap:.55rem;padding:.45rem .25rem;cursor:pointer}.product-option-choice input{width:1.1rem;height:1.1rem;accent-color:var(--accent,#b08c3c);flex:0 0 auto}.product-option-choice span{flex:1}.product-option-choice small{white-space:nowrap;color:var(--muted,#777)}.bundle-badge{display:inline-flex;width:max-content;padding:.3rem .6rem;border-radius:999px;background:#f4ead1;color:#70571c;font-size:.78rem;font-weight:700}.cart-line-options,.order-item-options{display:block;color:var(--muted,#777);font-size:.9em}.product-options-editor textarea{width:100%;max-width:100%;font:inherit;line-height:1.45}
@media(max-width:600px){.product-option-group{padding:.65rem}.product-option-choice{min-height:42px}.product-options-editor textarea{font-size:16px}}


/* In-restaurant QR ordering */
.qr-start-page,.qr-checkout-page{max-width:760px;margin:0 auto;padding:clamp(18px,4vw,40px)}
.qr-start-card,.qr-checkout-card,.qr-live-status-message,.qr-visit-banner{border:1px solid var(--line,#e7e2d8);border-radius:22px;background:var(--surface,#fff);padding:clamp(18px,4vw,30px)}
.qr-start-card h1,.qr-checkout-card h1{margin:8px 0 10px}
.qr-start-card form{display:grid;gap:14px;margin-top:22px}
.qr-start-card input,.qr-admin-panel input,.qr-admin-panel select{max-width:100%}
.qr-visit-banner{margin:18px 0;background:#fbf5e9}
.qr-visit-banner p{margin:7px 0 0}
.qr-active-orders{display:grid;gap:10px;margin:16px 0}
.qr-active-order{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;background:var(--surface,#fff);border:1px solid var(--line,#e7e2d8)}
.qr-active-order small{display:block;color:var(--muted,#777)}
.qr-live-status-message.is-ready{border-color:#7fa88a;background:#eef8ef}
.qr-admin-panel{margin:26px 0;padding:clamp(16px,3vw,26px);border:1px solid var(--line,#e7e2d8);border-radius:20px;background:var(--surface,#fff)}
.qr-admin-panel form{min-width:0}
.qr-admin-panel .qr-table-list{display:grid;gap:12px;margin-top:18px}
.qr-admin-panel .qr-table{display:grid;grid-template-columns:minmax(110px,1fr) minmax(150px,auto) minmax(110px,auto);align-items:center;gap:14px;padding:14px;border:1px solid var(--line,#e7e2d8);border-radius:16px}
.qr-admin-panel .qr-code-card{display:grid;justify-items:center;gap:10px;text-align:center;padding:16px}
.qr-admin-panel .qr-code{display:grid;place-items:center;min-width:132px;min-height:132px;background:#fff;border:8px solid #fff}
.qr-admin-panel .qr-code img,.qr-admin-panel .qr-code canvas{max-width:100%;height:auto}
.qr-order-identity{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.qr-order-badge{display:inline-flex;padding:4px 9px;border-radius:999px;background:#f6ead0;color:#684c13;font-size:.82rem;font-weight:700}
.qr-checkout-lines{display:grid;gap:10px}
.qr-checkout-line{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line,#e7e2d8)}
.qr-checkout-total{display:flex;justify-content:space-between;font-weight:800;font-size:1.15rem;padding:18px 0}
@media(max-width:640px){
 .qr-start-page,.qr-checkout-page{padding:16px}
 .qr-admin-panel .qr-table{grid-template-columns:1fr;justify-items:stretch}
 .qr-admin-panel .qr-code-card{justify-self:start}
 .qr-active-order{align-items:flex-start;flex-direction:column}
 .qr-admin-panel .qr-table form button,.qr-admin-panel button{width:100%}
}
@media print{
 body *{visibility:hidden!important}
 .qr-code-card,.qr-code-card *{visibility:visible!important}
 .qr-code-card{display:inline-grid!important;position:relative!important;break-inside:avoid;margin:12px!important}
 .qr-code-card button,.qr-code-card form,.qr-admin-panel h2,.qr-admin-panel>p{display:none!important}
}

/* Keep uploaded restaurant logos within the storefront header */
.restaurant-logo{
    display:block;
    width:48px;
    height:48px;
    max-width:48px;
    max-height:48px;
    flex:0 0 48px;
    object-fit:contain;
    padding:3px;
    border-radius:12px;
    background:#fff;
}
.store-name{min-width:0}
.store-name>div{min-width:0;overflow:hidden}
.store-name strong,.store-name small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:560px){
    .restaurant-logo{width:40px;height:40px;max-width:40px;max-height:40px;flex-basis:40px}
    .store-name{gap:.55rem}
}


/* Voucher and promotion summaries */
.discount-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 0;color:#26744e;font-weight:750;border-bottom:1px solid var(--line)}
.discount-row[hidden]{display:none}
.voucher-cart-box{border:1px solid var(--line);border-radius:14px;background:#fbfaf7}
.voucher-cart-box h2,.voucher-cart-box h3{margin-top:0}
.voucher-cart-box form{margin:.5rem 0}
.voucher-list .order-row{grid-template-columns:minmax(0,1fr) auto}
@media(max-width:800px){.voucher-list .order-row{grid-template-columns:1fr}.voucher-list .order-row form,.voucher-list .order-row form button{width:100%}}

.stats-customer-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
.stats-customer-kpis .muted{margin:0;font-size:.82rem}

/* Shared cart review on narrow screens */
.group-cart-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}
.group-cart-actions{margin:0;align-items:center}
.group-cart-actions form{display:flex;align-items:end;gap:.5rem}
.group-cart-actions input[type=number]{width:76px;max-width:76px}
@media(max-width:640px){
 .group-cart-row{grid-template-columns:minmax(0,1fr);gap:.75rem}
 .group-cart-actions{grid-column:1;grid-row:auto;display:flex;flex-wrap:wrap;width:100%}
 .group-cart-actions form{min-width:0}
 .group-cart-actions .button{min-height:40px}
 .group-cart-row>div:first-child{min-width:0;overflow-wrap:anywhere}
 #group-link{width:100%;min-width:0}
}


/* Tenant storefront design system — warm restaurant identity */
.storefront{
    --tenant-accent:var(--restaurant-accent,#2f6b3b);
    --tenant-dark:#21150f;
    --tenant-cream:#f7f0e4;
    --tenant-gold:#d5a843;
    max-width:none;
    padding:0 0 calc(4rem + env(safe-area-inset-bottom));
    background:var(--tenant-cream);
}
.storefront .store-header,
.storefront .store-hero,
.storefront .customer-menu-tools,
.storefront .special-offers,
.storefront .category-nav,
.storefront .store-layout,
.storefront .group-start-form,
.storefront .qr-visit-banner,
.storefront .store-social-links,
.storefront>.customer-menu-empty{width:min(1180px,calc(100% - 2.5rem));margin-inline:auto}
.storefront .store-header{height:92px}
.storefront .restaurant-logo{width:64px;height:64px;max-width:64px;max-height:64px;flex-basis:64px;padding:0;border:0;border-radius:14px;background:transparent;filter:drop-shadow(0 5px 10px rgba(33,21,15,.12))}
.storefront .store-name strong{font-family:Georgia,Tahoma,serif;font-size:1.18rem}
.storefront .language{background:#fff;border-color:rgba(33,21,15,.12)}
.storefront .cart-pill{background:var(--tenant-accent);border-color:var(--tenant-accent)}
.storefront .store-hero{
    position:relative;isolation:isolate;min-height:440px;
    border-radius:26px;padding:clamp(2.2rem,6vw,5.2rem);
    background:
      radial-gradient(circle at 82% 32%,color-mix(in srgb,var(--tenant-accent) 70%,transparent),transparent 25%),
      linear-gradient(110deg,rgba(28,16,11,.98) 0%,rgba(48,27,17,.95) 55%,color-mix(in srgb,var(--tenant-accent) 58%,#1d130e) 100%);
    box-shadow:0 22px 55px rgba(45,27,16,.18);
}
.storefront .store-hero:after{content:"";position:absolute;z-index:-1;inset:0;border-radius:inherit;background:linear-gradient(90deg,transparent 58%,rgba(255,255,255,.05));pointer-events:none}
.storefront .store-hero>div:first-child{max-width:720px}
.storefront .hero-kicker{margin:.9rem 0 -.3rem;color:var(--tenant-gold);font-weight:900;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}
.storefront .store-hero h1{font-size:clamp(2.45rem,6vw,5.2rem);letter-spacing:-.035em;max-width:760px}
.storefront .store-hero p{max-width:600px;color:#e3d9cc;font-size:1.03rem;line-height:1.65}
.storefront .open-label{background:var(--tenant-accent);color:#fff}
.storefront .hero-menu-link{display:inline-flex;align-items:center;gap:.6rem;margin-top:.65rem;padding:.8rem 1.05rem;border-radius:12px;background:var(--tenant-gold);color:#27180e;font-weight:900}
.storefront .hero-menu-link span{font-size:1.15rem}
.storefront .hero-pattern{color:#fff}
.storefront .customer-menu-tools{padding-top:1.35rem}
.storefront .customer-menu-search{border-color:rgba(61,42,27,.12);box-shadow:0 7px 22px rgba(56,38,23,.05)}
.storefront .special-offers{padding:3rem 0 1rem}
.storefront .special-offers-heading{text-align:center;margin-bottom:1.2rem}
.storefront .special-offers-heading h2,.storefront .menu-category h2{font-family:Georgia,Tahoma,serif;color:var(--tenant-dark)}
.storefront .special-offers-heading h2{font-size:clamp(2rem,4vw,3rem)}
.storefront .eyebrow{color:color-mix(in srgb,var(--tenant-accent) 78%,#17100b)}
.storefront .category-nav{
    top:0;z-index:20;padding:1rem 0;background:color-mix(in srgb,var(--tenant-cream) 92%,transparent);
    backdrop-filter:blur(14px);scroll-padding-inline:1rem;scrollbar-width:none
}
.storefront .category-nav::-webkit-scrollbar{display:none}
.storefront .category-nav a{border:0;background:#fff;box-shadow:0 3px 12px rgba(45,27,16,.06);min-height:44px;padding:.65rem 1rem}
.storefront .category-nav a[aria-current=location]{background:var(--tenant-accent);color:#fff}
.storefront .category-nav a[aria-current=location] span{background:rgba(255,255,255,.18);color:#fff}
.storefront .store-layout{grid-template-columns:minmax(0,1fr) 310px;gap:1.5rem}
.storefront .menu-category{scroll-margin-top:76px;padding:2rem 0}
.storefront .menu-category h2{font-size:clamp(1.8rem,3vw,2.5rem);margin-bottom:1rem}
.storefront .product-grid{gap:1rem}
.storefront .product-card{
    position:relative;grid-template-columns:108px minmax(0,1fr) auto;min-height:174px;padding:1rem;
    border:1px solid rgba(63,43,28,.1);border-radius:20px;box-shadow:0 8px 25px rgba(45,27,16,.055);
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease
}
.storefront .product-card:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(45,27,16,.1);border-color:color-mix(in srgb,var(--tenant-accent) 35%,transparent)}
.storefront .product-photo,.storefront .product-icon{width:108px;height:108px;border-radius:16px}
.storefront .product-icon{background:linear-gradient(145deg,#f3dfb6,#ead1a2);color:var(--tenant-accent);font-size:1.7rem}
.storefront .product-copy h3{font-size:1.08rem;color:var(--tenant-dark)}
.storefront .product-price strong{color:var(--tenant-accent);font-size:1.05rem}
.storefront .round-add{background:var(--tenant-accent);width:42px;height:42px;box-shadow:0 6px 14px color-mix(in srgb,var(--tenant-accent) 26%,transparent)}
.storefront .favorite-toggle{color:var(--tenant-accent)}
.storefront .basket-summary{top:76px;border:0;box-shadow:0 10px 30px rgba(45,27,16,.08)}
.storefront .button.primary{background:var(--tenant-accent)}
.storefront .store-social-links{margin-top:3rem;padding-top:1.5rem;border-top:1px solid rgba(63,43,28,.14)}
@media(max-width:900px){
 .storefront .store-layout{grid-template-columns:1fr}
 .storefront .basket-summary{display:none}
 .storefront .store-hero{min-height:380px}
}
@media(max-width:560px){
 .storefront{padding-bottom:calc(6rem + env(safe-area-inset-bottom))}
 .storefront .store-header,.storefront .store-hero,.storefront .customer-menu-tools,.storefront .special-offers,.storefront .store-layout,.storefront .group-start-form,.storefront .qr-visit-banner,.storefront .store-social-links,.storefront>.customer-menu-empty{width:calc(100% - 1.5rem)}
 .storefront .store-header{height:72px;padding:.5rem 0}
 .storefront .restaurant-logo{width:48px;height:48px;max-width:48px;max-height:48px;flex-basis:48px}
 .storefront .store-name strong{font-size:.88rem}
 .storefront .store-hero{width:100%;min-height:390px;border-radius:0;padding:2.1rem 1.25rem;align-items:end}
 .storefront .store-hero h1{font-size:2.45rem;margin:.65rem 0 .8rem}
 .storefront .store-hero p{font-size:.91rem;line-height:1.5}
 .storefront .hero-kicker{font-size:.69rem}
 .storefront .store-hero .button.secondary{background:transparent;color:#fff;border-color:rgba(255,255,255,.38)}
 .storefront .customer-menu-tools{padding-top:1rem}
 .storefront .special-offers{padding-top:2rem}
 .storefront .category-nav{width:100%;padding:.75rem;margin:0}
 .storefront .menu-category{padding:1.35rem 0}
 .storefront .product-card{grid-template-columns:88px minmax(0,1fr);gap:.8rem;min-height:0;padding:.8rem}
 .storefront .product-photo,.storefront .product-icon{width:88px;height:88px;border-radius:14px}
 .storefront .product-copy{min-width:0}
 .storefront .add-form{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;align-items:center;width:100%;padding-top:.15rem}
 .storefront .add-form .product-quantity{justify-content:flex-start}
 .storefront .add-form .round-add{grid-column:2;grid-row:1}
 .storefront .add-form select,.storefront .add-form fieldset{grid-column:1/-1}
 .storefront .product-title-row h3{font-size:1rem}
 .storefront .product-copy p{font-size:.8rem;margin-bottom:.5rem}
 .storefront .mobile-cart-bar{background:var(--tenant-accent)}
}


/* Al Rayan reference-inspired photographic storefront */
.storefront-al-rayan .store-header{
    position:relative;z-index:2;margin-top:10px;padding-inline:1.1rem;
    border:1px solid rgba(213,168,67,.25);border-bottom-color:rgba(213,168,67,.48);
    border-radius:18px 18px 0 0;background:rgba(16,10,6,.97);color:#fff
}
.storefront-al-rayan .store-header .store-name small{color:#d8c5ac}
.storefront-al-rayan .store-header .language{background:rgba(255,255,255,.07);border-color:rgba(213,168,67,.38);color:#fff}
.storefront-al-rayan .store-header .cart-pill{background:#315f29;border-color:#78a35d}
.storefront-al-rayan .store-hero{
    min-height:430px;border-radius:0 0 24px 24px;
    background-image:
      linear-gradient(90deg,rgba(12,7,4,.96) 0%,rgba(18,10,5,.83) 30%,rgba(18,10,5,.25) 58%,rgba(18,10,5,.04) 100%),
      var(--tenant-hero-image);
    background-size:cover;background-position:center;
}
.storefront-al-rayan .store-hero:after{background:linear-gradient(0deg,rgba(12,7,4,.22),transparent 45%)}
.storefront-al-rayan .store-hero>div:first-child{max-width:560px}
.storefront-al-rayan .store-hero h1{max-width:570px;text-shadow:0 4px 22px rgba(0,0,0,.75)}
.storefront-al-rayan .store-hero p{text-shadow:0 2px 12px rgba(0,0,0,.82)}
.storefront-al-rayan .hero-pattern{display:none}
.storefront-al-rayan .hero-menu-link{background:linear-gradient(135deg,#dfb64e,#b9811e);box-shadow:0 8px 22px rgba(0,0,0,.24)}
@media(max-width:700px){
 .storefront-al-rayan .store-header{margin-top:0;border-radius:0;padding-inline:.75rem;width:100%}
 .storefront-al-rayan .store-hero{
   min-height:520px;background-position:68% center;
   background-image:
     linear-gradient(0deg,rgba(12,7,4,.98) 0%,rgba(12,7,4,.87) 42%,rgba(12,7,4,.12) 76%),
     var(--tenant-hero-image);
   align-items:end;
 }
 .storefront-al-rayan .store-hero>div:first-child{max-width:100%}
}


/* Keep the reference composition stable in Arabic and German */
.storefront-al-rayan .store-header{direction:ltr}
[dir=rtl] .storefront-al-rayan .store-header .store-name{direction:rtl}
[dir=rtl] .storefront-al-rayan .store-hero{direction:ltr}
[dir=rtl] .storefront-al-rayan .store-hero>div:first-child{direction:rtl;text-align:right}
.storefront-al-rayan .store-hero .button.secondary{color:var(--tenant-dark)}
@media(max-width:700px){
 [dir=rtl] .storefront-al-rayan .store-hero>div:first-child{width:100%;text-align:right}
}

.cart-line-note{display:grid;gap:.35rem;margin-top:.35rem;font-size:.76rem;font-weight:800;color:var(--muted)}
.cart-line-note textarea{min-height:62px;padding:.55rem .65rem;border-radius:9px;font-size:.84rem;font-weight:500;color:var(--ink)}
.order-item-options.item-note{display:block;margin-top:.25rem;color:var(--gold-dark);font-weight:800}
.qr-cart-line .cart-line-note{margin-top:.55rem}
[dir=rtl] .cart-line-note{text-align:start}
@media(max-width:560px){
 .cart-line-note textarea{min-height:58px}
 .qr-cart-line{align-items:stretch;flex-direction:column;gap:.65rem}
}

/* Product size and add-on choices */
.product-option-group{grid-column:1/-1;border:1px solid var(--line);border-radius:14px;padding:.75rem;background:#fbfaf7;margin:0}
.product-option-group legend{padding:0 .35rem;font-size:.78rem;font-weight:900;color:var(--ink)}
.product-option-group legend span{margin-inline-start:.4rem;background:#fff;border:1px solid var(--line);border-radius:999px;padding:.1rem .38rem;color:var(--muted);font-size:.68rem}
.product-option-choice{display:flex;align-items:center;gap:.5rem;padding:.45rem 0;font-size:.86rem;font-weight:750}
.product-option-choice input{width:18px;min-height:18px;flex:0 0 18px}
.product-option-choice span{min-width:0;flex:1}
.product-option-choice small{color:var(--green);font-weight:900;white-space:nowrap}
.option-template-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin:.5rem 0}
.product-options-editor textarea{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.82rem;line-height:1.45}
[dir=rtl] .product-option-choice{direction:rtl}
@media(max-width:560px){
 .product-option-group{padding:.65rem}
 .product-option-choice{min-height:42px}
 .option-template-actions .button{width:100%}
}


/* Live storefront cart summary */
.mini-cart-lines{display:grid;gap:.75rem;margin:.9rem 0 1rem}
.mini-cart-line{display:flex;justify-content:space-between;gap:.85rem;padding-bottom:.75rem;border-bottom:1px solid var(--line)}
.mini-cart-copy{display:grid;gap:.2rem;min-width:0}
.mini-cart-copy strong{overflow-wrap:anywhere}
.mini-cart-copy small{color:var(--muted);font-size:.78rem;line-height:1.35}
.mini-cart-line>strong{white-space:nowrap;color:var(--tenant-accent,var(--green))}
.mini-cart-total{display:flex;justify-content:space-between;gap:1rem;padding:.85rem 0 1rem;border-top:2px solid var(--line);font-weight:900}
[dir=rtl] .mini-cart-line,[dir=rtl] .mini-cart-total{direction:rtl}

/* Keep the table reservation CTA readable over mobile photo heroes. */
.storefront .store-hero a[href*="/reservations"].button.secondary,
.storefront-al-rayan .store-hero a[href*="/reservations"].button.secondary {
    background:#fff!important;
    border-color:rgba(255,255,255,.92)!important;
    color:var(--tenant-dark,#171612)!important;
    box-shadow:0 12px 28px rgba(0,0,0,.34)!important;
}

@media(max-width:700px){
    .storefront .store-hero a[href*="/reservations"].button.secondary,
    .storefront-al-rayan .store-hero a[href*="/reservations"].button.secondary {
        width:max-content!important;
        max-width:100%!important;
        margin-inline:auto!important;
        padding:.85rem 1.15rem!important;
        border-radius:12px!important;
        font-weight:900!important;
    }
}

/* Mobile hero CTA layout: keep primary actions calm, aligned, and thumb-friendly. */
@media(max-width:700px){
    .storefront .store-hero > div:first-child {
        display:flex;
        flex-direction:column;
        align-items:flex-start;
        width:100%;
    }

    [dir=rtl] .storefront .store-hero > div:first-child {
        align-items:flex-end;
    }

    .storefront .store-hero .hero-menu-link,
    .storefront .store-hero a[href*="/reservations"].button.secondary {
        width:min(100%, 292px)!important;
        min-height:54px;
        justify-content:center;
        text-align:center;
        margin-top:.75rem!important;
        border-radius:14px!important;
        font-weight:900;
    }

    .storefront .store-hero .hero-menu-link {
        order:5;
        background:linear-gradient(135deg,#e0b647,#bd8420);
        box-shadow:0 12px 28px rgba(0,0,0,.22);
    }

    .storefront .store-hero .address {
        order:6;
        width:min(100%, 292px);
        margin:.8rem 0 0!important;
        color:rgba(255,255,255,.88);
        text-align:center;
    }

    .storefront .store-hero a[href*="/reservations"].button.secondary {
        order:7;
    }

    .storefront .group-start-form {
        width:calc(100% - 1.5rem);
        margin:.75rem auto 1.1rem;
        display:flex;
        justify-content:center;
    }

    .storefront .group-start-form .button {
        width:min(100%, 292px);
        min-height:52px;
        border-radius:14px;
        background:#fff;
        border-color:rgba(33,21,15,.12);
        color:var(--tenant-dark,#21150f);
        box-shadow:0 10px 26px rgba(45,27,16,.10);
        font-weight:900;
    }

    [dir=rtl] .storefront .group-start-form {
        justify-content:flex-end;
    }
}

@media(max-width:420px){
    .storefront .store-hero .hero-menu-link,
    .storefront .store-hero a[href*="/reservations"].button.secondary,
    .storefront .group-start-form .button,
    .storefront .store-hero .address {
        width:100%!important;
    }

    .storefront .store-hero {
        padding-inline:1rem;
    }
}
