/* Osool Royal Menu V14 Live Luxe
   Final visual layer derived from Osool Hero V2. Functionality stays in existing JS/PHP. */
.osrm11.osrm11-direct-menu{
  --osv-olive:#494a27;--osv-olive-light:#646946;--osv-deep:#34391d;
  --osv-beige:#f2ece5;--osv-paper:#f7eee4;--osv-cream:#fff7ed;
  --osv-red:#9f3536;--osv-border:#d4c4b2;
  --olive:var(--osv-olive-light);--beige:var(--osv-paper);--ink:#3f4327;--pale:var(--osv-beige);
  max-width:1440px!important;margin:0 auto!important;overflow:hidden!important;
  border:1px solid #fffaf2!important;border-radius:30px!important;
  background:radial-gradient(ellipse at 24% 18%,#fff9f1 0%,#fff5eb 28%,#f5e6d9 72%,#eee2d7 100%)!important;
  box-shadow:0 26px 75px rgba(63,60,46,.16),inset 0 1px 0 rgba(255,255,255,.9)!important;
  color:var(--osv-olive)!important;font-family:'Cairo','Tajawal',Tahoma,Arial,sans-serif!important;
  position:relative!important;isolation:isolate!important
}
.osrm11.osrm11-direct-menu :is(a,button,input,select):focus-visible{outline:3px solid var(--osv-red)!important;outline-offset:4px!important}

/* Olive utility-style top bar, matching Hero V2. */
.osrm11.osrm11-direct-menu .osrm11-bar{
  min-height:84px!important;padding:13px clamp(18px,4vw,58px)!important;
  background:linear-gradient(100deg,#4b4e2e 0%,#363e1b 55%,#494d2b 100%)!important;
  border-bottom:1px solid rgba(255,248,232,.26)!important;
  box-shadow:0 9px 25px rgba(48,50,30,.18)!important
}
.osrm11.osrm11-direct-menu .osrm11-wordmark{color:#fff8ee!important;text-shadow:0 1px 0 rgba(0,0,0,.18)!important}
.osrm11.osrm11-direct-menu .osrm11-wordmark-title{font-size:clamp(18px,2.1vw,26px)!important;font-weight:900!important;line-height:1.45!important}
.osrm11.osrm11-direct-menu .osrm11-wordmark-sub{font-size:8px!important;letter-spacing:.22em!important;color:#f2dfc8!important;opacity:.88!important}
.osrm11.osrm11-direct-menu .osrm11-cart-actions{gap:10px!important}
.osrm11.osrm11-direct-menu :is(.osrm11-cartlink,.osrm11-invoice-trigger){
  border:1px solid rgba(255,250,242,.72)!important;border-radius:999px!important;
  background:linear-gradient(155deg,#fff9f1,#f4e5d6)!important;color:#404627!important;
  box-shadow:0 4px 0 #d6c5b4,0 10px 15px rgba(35,39,24,.26),inset 0 3px 5px #fff!important;
  transition:transform .24s ease,box-shadow .24s ease,filter .2s ease!important;font-weight:900!important
}
.osrm11.osrm11-direct-menu :is(.osrm11-cartlink,.osrm11-invoice-trigger):hover{transform:translateY(-3px)!important;filter:brightness(1.025)!important;box-shadow:0 7px 0 #d6c5b4,0 14px 18px rgba(35,39,24,.28),inset 0 3px 5px #fff!important}
.osrm11.osrm11-direct-menu .osrm11-cartlink b{background:var(--osv-red)!important;color:#fff8ee!important;box-shadow:inset 0 2px 2px rgba(255,255,255,.25)!important}
.osrm11.osrm11-direct-menu .osrm11-cart-total-line{color:#fff1df!important}
.osrm11.osrm11-direct-menu .osrm11-cart-total-line strong{color:#fff!important}

/* Paper stage + the same light geometric pattern used by Hero V2. */
.osrm11.osrm11-direct-menu .osrm11-menu-area{
  position:relative!important;overflow:hidden!important;padding:clamp(34px,5vw,72px) clamp(16px,5.5%,84px) 76px!important;
  background:radial-gradient(ellipse at 30% 10%,#fffaf3 0%,#fff5eb 34%,#f4e7da 100%)!important
}
.osrm11.osrm11-direct-menu .osrm11-menu-area::before{
  content:"";position:absolute;left:-55px;top:80px;width:280px;height:620px;pointer-events:none;opacity:.24;
  background:url('pattern.svg') repeat;background-size:96px;
  -webkit-mask-image:linear-gradient(to right,#000 0%,transparent 100%);mask-image:linear-gradient(to right,#000 0%,transparent 100%)
}
.osrm11.osrm11-direct-menu .osrm11-menu-area::after{
  content:"";position:absolute;right:-310px;top:70px;width:800px;height:560px;border:2px solid rgba(255,255,255,.76);border-left:0;border-bottom:0;
  border-radius:64% 36% 0 0;transform:rotate(-16deg);pointer-events:none;opacity:.52
}
.osrm11.osrm11-direct-menu .osrm11-menu-area>*{position:relative;z-index:2}

/* Prominent approved Osool logo in the same arch language as the Hero. */
.osrm11.osrm11-direct-menu .osrm11-sectionhead{max-width:760px!important;margin:0 auto 34px!important;text-align:center!important}
.osrm11.osrm11-direct-menu .osrm14-brand-crown{display:flex;justify-content:center;margin:0 auto 18px!important}
.osrm11.osrm11-direct-menu .osrm14-logo-arch{
  width:160px;height:226px;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;
  border:2px solid rgba(255,253,244,.92);border-bottom:0;border-radius:48% 48% 18px 18px/35% 35% 12px 12px;
  background:linear-gradient(120deg,rgba(238,225,210,.82) 0%,rgba(255,248,238,.52) 44%,rgba(234,216,201,.78) 100%);
  box-shadow:inset 8px 0 17px rgba(205,183,162,.22),inset -10px 8px 20px rgba(255,248,234,.72),0 12px 24px rgba(89,74,56,.12)
}
.osrm11.osrm11-direct-menu .osrm14-logo-arch::before{content:"";position:absolute;inset:10px 11px -20px;border:1.2px solid rgba(255,255,255,.65);border-bottom:0;border-radius:48% 48% 12px 12px/35% 35% 12px 12px}
.osrm11.osrm11-direct-menu .osrm14-logo-arch img{position:relative;z-index:1;width:auto!important;height:90%!important;max-height:205px!important;max-width:78%!important;object-fit:contain!important;filter:drop-shadow(0 4px 3px rgba(105,112,66,.06))}
.osrm11.osrm11-direct-menu .osrm11-sectionhead h2{margin:0!important;color:var(--osv-olive)!important;font-size:clamp(36px,4.4vw,62px)!important;font-weight:900!important;line-height:1.28!important;letter-spacing:-.025em!important;text-shadow:0 2px 1px rgba(255,255,255,.48)!important}
.osrm11.osrm11-direct-menu .osrm14-title-accent{display:block;width:12px;height:12px;border:3px solid var(--osv-red);transform:rotate(45deg);margin:18px auto 0}

/* Service mode and category navigation: floating 3D capsules. */
.osrm11.osrm11-direct-menu .osrm11-service{gap:15px!important;margin-bottom:26px!important}
.osrm11.osrm11-direct-menu .osrm11-service-choice{
  min-width:170px!important;min-height:52px!important;padding:12px 25px!important;border:1px solid #fffaf1!important;border-radius:999px!important;
  color:#404627!important;background:linear-gradient(155deg,#fff9f1,#f4e5d6)!important;
  box-shadow:0 5px 0 #d6c5b4,0 12px 17px rgba(77,67,49,.14),inset 0 4px 6px #fff!important;
  font-weight:900!important;transition:transform .25s ease,box-shadow .25s ease,filter .2s ease!important
}
.osrm11.osrm11-direct-menu .osrm11-service-choice:hover{transform:translateY(-3px)!important;box-shadow:0 8px 0 #d6c5b4,0 16px 19px rgba(77,67,49,.18),inset 0 4px 6px #fff!important}
.osrm11.osrm11-direct-menu .osrm11-service-choice.is-active{
  color:#fffdf7!important;background:linear-gradient(150deg,#82895f 0%,#565e35 47%,#36401c 100%)!important;border-color:#90966b!important;
  box-shadow:0 6px 0 #343b1e,0 14px 18px rgba(63,60,46,.2),inset 0 3px 6px rgba(255,255,255,.42)!important
}
.osrm11.osrm11-direct-menu .osrm11-tax-mode-notice{max-width:820px!important;margin:0 auto 28px!important;padding:10px 18px!important;border:1px solid rgba(159,53,54,.22)!important;border-radius:999px!important;background:rgba(255,249,241,.72)!important;color:#5c603b!important;box-shadow:inset 0 2px 4px rgba(255,255,255,.8)!important}

.osrm11.osrm11-direct-menu .osrm11-tools{gap:16px!important;margin-bottom:22px!important}
.osrm11.osrm11-direct-menu label.osrm11-searchbox{
  min-height:58px!important;max-width:560px!important;padding:0 22px!important;border:1px solid #fffaf2!important;border-radius:999px!important;
  background:linear-gradient(145deg,#fff8ee 0%,#f6ecdf 62%,#faf1e7 100%)!important;
  box-shadow:0 10px 24px rgba(99,81,63,.12),inset 0 3px 6px rgba(255,255,255,.86),inset 0 -2px 5px rgba(166,142,118,.14)!important
}
.osrm11.osrm11-direct-menu label.osrm11-searchbox:focus-within{border-color:rgba(159,53,54,.45)!important;box-shadow:0 12px 28px rgba(99,81,63,.14),0 0 0 3px rgba(159,53,54,.08),inset 0 3px 6px rgba(255,255,255,.9)!important}
.osrm11.osrm11-direct-menu label.osrm11-searchbox>span:not(.screen-reader-text){color:var(--osv-red)!important;font-weight:900!important}
.osrm11.osrm11-direct-menu .osrm11-search{color:var(--osv-olive)!important;font-weight:700!important}
.osrm11.osrm11-direct-menu .osrm11-results{color:#696d48!important;font-weight:800!important}

.osrm11.osrm11-direct-menu .osrm11-categories{gap:11px!important;padding-bottom:22px!important;margin-bottom:20px!important}
.osrm11.osrm11-direct-menu .osrm11-chip{
  min-height:45px!important;padding:10px 19px!important;border:1px solid #d9c8b6!important;border-radius:999px!important;
  color:#575c37!important;background:linear-gradient(145deg,rgba(255,249,241,.82),rgba(242,231,219,.82))!important;
  box-shadow:0 3px 0 rgba(214,197,180,.86),inset 0 2px 4px rgba(255,255,255,.8)!important;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease!important
}
.osrm11.osrm11-direct-menu .osrm11-chip:hover{transform:translateY(-2px)!important;border-color:var(--osv-red)!important}
.osrm11.osrm11-direct-menu .osrm11-chip.is-active{
  color:#fffaf4!important;background:linear-gradient(155deg,#737a4d,#4b532d)!important;border-color:#626a40!important;
  box-shadow:0 4px 0 #343b1e,0 9px 14px rgba(63,60,46,.16),inset 0 2px 4px rgba(255,255,255,.28)!important
}
.osrm11.osrm11-direct-menu .osrm11-chip.is-active::after{content:"";display:inline-block;width:7px;height:7px;border:2px solid #cf7778;transform:rotate(45deg);margin-right:9px}

/* Cards: beveled warm-paper surfaces with deliberate depth. */
.osrm11.osrm11-direct-menu .osrm11-grid{gap:34px 24px!important;align-items:stretch!important}
.osrm11.osrm11-direct-menu .osrm11-card{
  border:1px solid #fffaf2!important;border-radius:24px!important;overflow:hidden!important;
  background:linear-gradient(155deg,#fffaf3 0%,#f7ebdf 100%)!important;
  box-shadow:0 7px 0 #dccbbb,0 18px 30px rgba(84,67,48,.13),inset 0 3px 5px rgba(255,255,255,.88)!important;
  transform:translateY(0);transition:transform .3s cubic-bezier(.16,.7,.25,1),box-shadow .3s ease,filter .2s ease!important
}
.osrm11.osrm11-direct-menu .osrm11-card::after{content:"";display:block;height:3px;background:linear-gradient(90deg,transparent,var(--osv-red),transparent);opacity:.68}
.osrm11.osrm11-direct-menu .osrm11-card:hover{transform:translateY(-7px)!important;filter:brightness(1.012)!important;box-shadow:0 11px 0 #dccbbb,0 26px 38px rgba(84,67,48,.18),inset 0 3px 5px rgba(255,255,255,.9)!important}
.osrm11.osrm11-direct-menu .osrm11-photo{background:#e8ded2!important;overflow:hidden!important}
.osrm11.osrm11-direct-menu .osrm11-photo::after{content:"";position:absolute;inset:auto 0 0;height:34%;pointer-events:none;background:linear-gradient(to top,rgba(52,57,29,.15),transparent)}
.osrm11.osrm11-direct-menu .osrm11-card:hover .osrm11-photo img{transform:scale(1.055)!important}
.osrm11.osrm11-direct-menu .osrm11-card-info{padding:20px 19px 21px!important;background:linear-gradient(160deg,rgba(255,250,244,.95),rgba(245,232,219,.94))!important}
.osrm11.osrm11-direct-menu .osrm11-card-info h3{color:var(--osv-olive)!important;font-weight:900!important;font-size:clamp(17px,1.5vw,21px)!important;text-shadow:0 1px 0 #fff!important}
.osrm11.osrm11-direct-menu .osrm11-card-info p{color:#77725f!important;font-weight:500!important}
.osrm11.osrm11-direct-menu .osrm11-price{color:var(--osv-olive)!important;font-weight:900!important;font-variant-numeric:tabular-nums!important}
.osrm11.osrm11-direct-menu .osrm11-tax-price-caption{color:#777b54!important;font-weight:700!important;opacity:.9!important}
.osrm11.osrm11-direct-menu .osrm11-weekday-label{color:var(--osv-red)!important;font-weight:800!important}

/* Hero V2 style 3D ordering buttons. */
.osrm11.osrm11-direct-menu .osrm11-add{
  min-height:42px!important;padding:9px 14px!important;border:1px solid #9da478!important;border-radius:999px!important;
  color:#fffdf7!important;background:linear-gradient(150deg,#82895f 0%,#565e35 47%,#36401c 100%)!important;
  box-shadow:0 5px 0 #343b1e,0 11px 14px rgba(63,60,46,.22),inset 0 3px 5px rgba(255,255,255,.4)!important;
  font-weight:900!important;transition:transform .22s ease,box-shadow .22s ease,filter .2s ease!important
}
.osrm11.osrm11-direct-menu button.osrm11-add:hover,.osrm11.osrm11-direct-menu a.osrm11-add:hover{transform:translateY(-3px)!important;filter:brightness(1.045)!important;box-shadow:0 8px 0 #343b1e,0 15px 17px rgba(63,60,46,.24),inset 0 3px 5px rgba(255,255,255,.4)!important}
.osrm11.osrm11-direct-menu button.osrm11-add:active,.osrm11.osrm11-direct-menu a.osrm11-add:active{transform:translateY(2px)!important;box-shadow:0 2px 0 #343b1e,0 6px 9px rgba(63,60,46,.2),inset 0 2px 4px rgba(255,255,255,.28)!important}
.osrm11.osrm11-direct-menu :is(.osrm11-unavailable,.osrm11-weekly-unavailable){background:linear-gradient(155deg,#d8cabe,#bdaea0)!important;border-color:#d7c6b5!important;color:#625d53!important;box-shadow:0 4px 0 #aa9d90,0 8px 12px rgba(77,67,49,.12)!important}

/* Weekly-day controls follow the same capsule system. */
.osrm11.osrm11-direct-menu :is(.osrm11-day-button,.osrm11-category-select){border-color:#d4c4b2!important;background:#fff8ee!important;color:#494a27!important;border-radius:14px!important;font-weight:800!important}
.osrm11.osrm11-direct-menu .osrm11-day-button.is-active{background:var(--osv-olive-light)!important;color:#fff7ed!important;border-color:var(--osv-olive-light)!important;box-shadow:0 4px 0 var(--osv-deep)!important}
.osrm11.osrm11-direct-menu .osrm11-day-button.is-today small{color:#d98b8c!important}

/* Empty/info panels and all cart / variation dialogs inherit the warm material. */
.osrm11.osrm11-direct-menu :is(.osrm11-info,.osrm11-empty){border:1px solid #fffaf1!important;border-radius:22px!important;background:linear-gradient(150deg,#fff9f1,#f4e6d8)!important;color:var(--osv-olive)!important;box-shadow:0 6px 0 #d9c8b7,0 15px 24px rgba(77,67,49,.12),inset 0 3px 6px #fff!important}
.osrm11.osrm11-direct-menu .osrm11-disclaimer{color:#6f7059!important}
.osrm11-var-modal .osrm11-var-panel,.osrm11-invoice-panel,.osrm11-switch-dialog,.osrm11-qty-dialog{
  border:1px solid #fffaf2!important;background:linear-gradient(155deg,#fff7ed,#f1dfcf)!important;color:#494a27!important;
  box-shadow:0 11px 0 #d5c2b0,0 30px 75px rgba(21,32,22,.42),inset 0 4px 7px rgba(255,255,255,.82)!important
}
.osrm11-invoice-panel .osrm11-invoice-cart,.osrm11-switch-accept,.osrm11-qty-dialog .osrm11-qty-add{
  background:linear-gradient(150deg,#82895f 0%,#565e35 47%,#36401c 100%)!important;color:#fffdf7!important;border-color:#90966b!important;
  box-shadow:0 5px 0 #343b1e,0 11px 14px rgba(63,60,46,.22),inset 0 3px 5px rgba(255,255,255,.38)!important
}

.osrm11.osrm11-direct-menu .osrm11-mobile-cart{
  background:linear-gradient(150deg,#737a4d,#444c27)!important;color:#fff8ee!important;border-top:2px solid var(--osv-red)!important;
  box-shadow:0 -10px 28px rgba(52,57,29,.25)!important;font-weight:900!important
}

@media(max-width:920px){
  .osrm11.osrm11-direct-menu{border-radius:22px!important}
  .osrm11.osrm11-direct-menu .osrm14-logo-arch{width:138px;height:198px}
  .osrm11.osrm11-direct-menu .osrm14-logo-arch img{max-height:178px!important}
}
@media(max-width:600px){
  .osrm11.osrm11-direct-menu{border-radius:0!important;border-inline:0!important}
  .osrm11.osrm11-direct-menu .osrm11-bar{min-height:72px!important;padding:10px 14px!important}
  .osrm11.osrm11-direct-menu .osrm11-wordmark-title{font-size:16px!important}
  .osrm11.osrm11-direct-menu .osrm11-wordmark-sub{font-size:6px!important;letter-spacing:.13em!important}
  .osrm11.osrm11-direct-menu :is(.osrm11-cartlink,.osrm11-invoice-trigger){box-shadow:0 3px 0 #d6c5b4,0 7px 10px rgba(35,39,24,.23),inset 0 2px 4px #fff!important}
  .osrm11.osrm11-direct-menu .osrm11-menu-area{padding:34px 13px 54px!important}
  .osrm11.osrm11-direct-menu .osrm11-menu-area::before{width:160px;left:-55px;opacity:.15}
  .osrm11.osrm11-direct-menu .osrm14-logo-arch{width:116px;height:166px}
  .osrm11.osrm11-direct-menu .osrm14-logo-arch img{max-height:150px!important}
  .osrm11.osrm11-direct-menu .osrm11-sectionhead h2{font-size:34px!important}
  .osrm11.osrm11-direct-menu .osrm14-title-accent{width:9px;height:9px;border-width:2px;margin-top:12px}
  .osrm11.osrm11-direct-menu .osrm11-service{gap:10px!important}
  .osrm11.osrm11-direct-menu .osrm11-service-choice{min-width:0!important;flex:1!important;min-height:46px!important;padding:9px 10px!important;box-shadow:0 4px 0 #d6c5b4,0 9px 12px rgba(77,67,49,.12),inset 0 3px 5px #fff!important}
  .osrm11.osrm11-direct-menu .osrm11-service-choice.is-active{box-shadow:0 4px 0 #343b1e,0 9px 12px rgba(63,60,46,.18),inset 0 2px 5px rgba(255,255,255,.36)!important}
  .osrm11.osrm11-direct-menu .osrm11-tax-mode-notice{border-radius:18px!important;font-size:11px!important}
  .osrm11.osrm11-direct-menu label.osrm11-searchbox{min-height:52px!important}
  .osrm11.osrm11-direct-menu .osrm11-grid{gap:18px 12px!important}
  .osrm11.osrm11-direct-menu .osrm11-card{border-radius:16px!important;box-shadow:0 5px 0 #dccbbb,0 12px 20px rgba(84,67,48,.12),inset 0 2px 4px rgba(255,255,255,.88)!important}
  .osrm11.osrm11-direct-menu .osrm11-card:hover{transform:translateY(-3px)!important;box-shadow:0 7px 0 #dccbbb,0 15px 23px rgba(84,67,48,.15),inset 0 2px 4px rgba(255,255,255,.9)!important}
  .osrm11.osrm11-direct-menu .osrm11-card-info{padding:12px!important}
  .osrm11.osrm11-direct-menu .osrm11-card-info h3{font-size:14px!important}
  .osrm11.osrm11-direct-menu .osrm11-add{font-size:10.5px!important;min-height:36px!important;padding:7px 9px!important;box-shadow:0 4px 0 #343b1e,0 8px 10px rgba(63,60,46,.2),inset 0 2px 4px rgba(255,255,255,.36)!important}
  .osrm11.osrm11-direct-menu .osrm11-chip.is-active::after{display:none}
}
@media(prefers-reduced-motion:reduce){
  .osrm11.osrm11-direct-menu *, .osrm11.osrm11-direct-menu *::before,.osrm11.osrm11-direct-menu *::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}
}
