/* YOUR EVENING · shared menu drawer and additive menu controls */
#je-panel,#je-floating,#je-toast{--je-gold:#e8ca8c;--je-cream:#f8efe4;--je-muted:#cfb5ad;--je-line:rgba(230,195,139,.26);font-family:var(--font-body,Inter,Arial,sans-serif);color:var(--je-cream);box-sizing:border-box}
#je-panel *,#je-panel *::before,#je-panel *::after,#je-floating *{box-sizing:border-box}
#je-panel [hidden],#je-floating[hidden],#je-toast[hidden]{display:none!important}
#je-panel{position:fixed;inset:0 0 0 auto;margin:0;width:min(760px,100%);max-width:100%;height:100dvh;max-height:100dvh;padding:0;border:1px solid #e5c78b66;border-right:0;background:linear-gradient(130deg,#6b262b6e,transparent 50%),#32080cf5;border-radius:26px 0 0 26px;box-shadow:-25px 0 100px #13000380;overflow:hidden;backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px)}
#je-panel::backdrop{background:#100004a3;backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
#je-panel[open]{animation:je-enter .36s cubic-bezier(.16,1,.3,1)}
@keyframes je-enter{from{opacity:.4;transform:translateX(35px)}to{opacity:1;transform:translateX(0)}}
#je-panel .je-shell{height:100%;display:flex;flex-direction:column;min-height:0}
#je-panel :where(h2,h3,p,fieldset){margin:0;padding:0}
#je-panel :where(h2,h3){font-family:var(--font-display,Fraunces,Georgia,serif)!important;color:var(--je-cream)!important;font-weight:400;letter-spacing:-.035em;text-transform:none;line-height:1.1}
#je-panel p,#je-panel label{font-family:var(--font-body,Inter,Arial,sans-serif)!important;color:var(--je-muted)!important;font-size:12px;line-height:1.65}
#je-panel button,#je-floating,#je-panel input{font-family:var(--font-body,Inter,Arial,sans-serif)!important;letter-spacing:0;text-transform:none;box-shadow:none}
#je-panel button{border:0;background:none;color:var(--je-cream);cursor:pointer;padding:0;line-height:1.4;font-size:12px;touch-action:manipulation}
#je-panel button:disabled{opacity:.4;cursor:default}
#je-panel :focus-visible,#je-floating:focus-visible,.je-menu-add:focus-visible{outline:2px solid #f4d894;outline-offset:3px}
#je-panel .je-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:32px 32px 22px;flex-shrink:0}
#je-panel .je-eyebrow{font-size:8px;color:var(--je-gold)!important;letter-spacing:.16em;text-transform:uppercase}
#je-panel h2{font-size:45px;margin:10px 0 9px}
#je-panel h2 em{font-family:inherit;color:var(--je-gold)!important;font-weight:400}
#je-panel .je-close{display:grid;place-items:center;width:37px;height:37px;flex-shrink:0;font-size:25px;font-weight:300;border:1px solid var(--je-line);border-radius:50%;color:var(--je-gold)}
#je-panel .je-tabs{display:flex;gap:5px;padding:5px;border:1px solid var(--je-line);border-radius:99px;margin:0 30px 17px;background:#ffffff06;flex-shrink:0}
#je-panel .je-tabs button{border-radius:99px;flex:1;padding:10px 5px;font-size:10px;color:var(--je-muted)}
#je-panel .je-tabs [aria-pressed=true]{background:linear-gradient(120deg,#e8ca8c29,#e8ca8c0a);color:var(--je-gold);box-shadow:inset 0 0 0 1px #e8ca8c65}
#je-panel .je-search-wrap{margin:0 30px 16px;flex-shrink:0}
#je-panel input[type=search]{background:#ffffff08;color:var(--je-cream);font-size:16px;border:1px solid var(--je-line);padding:12px 16px;border-radius:10px;width:100%;height:45px}
#je-panel input::placeholder{color:#cfb5ad;font-size:12px;opacity:.75}
#je-panel .je-content{padding:0 30px 28px;overflow-y:auto;min-height:0;flex:1;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#b1875c transparent}
#je-panel .je-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
#je-panel .je-product{position:relative;min-width:0;display:flex;flex-direction:column;border:1px solid var(--je-line);background:linear-gradient(145deg,#ffffff0c,#ffffff02);border-radius:16px;overflow:hidden}
#je-panel .je-photo{position:relative;aspect-ratio:1.18;background:radial-gradient(ellipse at center bottom,#d7966030,transparent 65%);overflow:hidden}
#je-panel .je-photo img{width:100%;height:100%;display:block;object-fit:contain;filter:drop-shadow(0 12px 12px #0e000660);position:relative;z-index:1;transition:transform .6s cubic-bezier(.16,1,.3,1)}
#je-panel .je-kind-food .je-photo img{object-fit:cover}
#je-panel .je-photo::after{content:"";position:absolute;bottom:7%;left:20%;right:20%;height:9%;border-radius:50%;border:1px solid #e4caa267;background:linear-gradient(#ffffff0d,#f3cba725);box-shadow:0 12px 20px #13000680}
#je-panel .je-kind-food .je-photo::after{display:none}
#je-panel .je-kind-cocktails .je-photo img,#je-panel .je-kind-bottles .je-photo img{padding:5px 20px 13px}
#je-panel .je-product-copy{display:flex;flex:1;flex-direction:column;padding:19px}
#je-panel .je-product h3{font-size:25px;margin:8px 0 12px;overflow-wrap:anywhere}
#je-panel .je-description{font-size:11px;line-height:1.7;margin-bottom:16px}
#je-panel .je-product-bottom{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;margin-bottom:14px}
#je-panel .je-price{color:var(--je-gold);font-size:14px}
#je-panel .je-added-count{font-size:8px;color:var(--je-muted)}
#je-panel .je-add{display:flex;align-items:center;justify-content:space-between;width:100%;border:1px solid #e8ca8c66;border-radius:9px;padding:12px;color:var(--je-gold);background:#f6d69108;font-size:10px}
#je-panel .je-add>span{font-size:17px;line-height:1}
#je-panel .je-variants{border:0;display:flex;gap:5px;flex-wrap:wrap;margin:0 0 13px;min-width:0}
#je-panel .je-variants legend{color:var(--je-muted);font-size:9px;line-height:1.6;margin-bottom:6px}
#je-panel .je-variants label{position:relative;font-size:9px;cursor:pointer}
#je-panel .je-variants input{position:absolute;width:1px;height:1px;opacity:0}
#je-panel .je-variants span{display:block;border:1px solid var(--je-line);border-radius:6px;padding:6px 8px}
#je-panel .je-variants input:checked+span{color:var(--je-gold);background:#e8ca8c21;border-color:#e8ca8c88}
#je-panel .je-variants input:focus-visible+span{outline:2px solid var(--je-gold);outline-offset:2px}
#je-panel .je-bottom{flex-shrink:0;padding:19px 30px calc(22px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--je-line);background:#33080eed;box-shadow:0 -12px 22px #21020728}
#je-panel .je-total{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:11px}
#je-panel .je-total strong{font-weight:500;color:var(--je-gold);font-size:17px;text-align:right}
#je-panel .je-estimate{font-size:9px;line-height:1.6;margin:8px 0 16px}
#je-panel .je-gold{background:linear-gradient(110deg,#f1dba8,#d8b16a);border:1px solid #f6dda2;color:#331208;border-radius:11px;min-height:49px;width:100%;padding:13px 18px;text-align:center;font-size:12px;font-weight:600}
#je-panel .je-line{display:flex;gap:17px;padding:21px 0;border-bottom:1px solid var(--je-line)}
#je-panel .je-line>img{width:90px;height:110px;object-fit:contain;border:1px solid var(--je-line);border-radius:12px;background:#ffffff07;flex-shrink:0}
#je-panel .je-line-copy{min-width:0;flex:1}
#je-panel .je-line h3{font-size:23px;margin:6px 0 9px;overflow-wrap:anywhere}
#je-panel .je-line-variant{font-size:10px;margin-bottom:8px;color:var(--je-gold)!important}
#je-panel .je-line-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:11px;color:var(--je-gold);margin-bottom:12px}
#je-panel .je-quantity{display:flex;align-items:center;border:1px solid var(--je-line);border-radius:99px;overflow:hidden}
#je-panel .je-quantity button{width:34px;height:32px;font-size:17px;display:grid;place-items:center}
#je-panel .je-quantity>span{min-width:24px;text-align:center;font-size:12px;color:var(--je-cream)}
#je-panel .je-remove{font-size:9px;text-decoration:underline;text-underline-offset:3px;color:var(--je-muted);margin-left:auto}
#je-panel .je-item-note{font-size:9px;display:block}
#je-panel .je-item-note span{opacity:.6}
#je-panel .je-item-note input{display:block;width:100%;background:#ffffff05;border:1px solid var(--je-line);border-radius:8px;padding:9px 11px;color:var(--je-cream);font-size:16px;height:40px;margin-top:5px}
#je-panel .je-empty-state{text-align:center;max-width:400px;margin:30px auto;padding:20px}
#je-panel .je-empty-state>svg{width:35px;height:35px;color:var(--je-gold)}
#je-panel .je-empty-state h3{font-size:38px;margin:18px 0}
#je-panel .je-empty-state p{font-size:12px;line-height:1.8;margin-bottom:22px}
#je-panel .je-empty{padding:30px;text-align:center}
#je-panel .je-storage-note{font-size:10px;color:#f4d696!important;padding:10px 0}
#je-panel .je-sr{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}
#je-floating{position:fixed;z-index:800;bottom:calc(22px + env(safe-area-inset-bottom,0px));right:25px;display:flex;gap:13px;align-items:center;border:1px solid #e5c78b88;border-radius:99px;background:linear-gradient(120deg,#6a2934d9,#33070eea);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 9px 32px #16000366,inset 0 1px #ffefd325;padding:14px 19px;color:#f2d79d;font-size:12px;cursor:pointer;line-height:1.3}
#je-floating svg{width:18px;height:18px}#je-floating b{font-size:17px;font-weight:400}
#je-toast{position:fixed;z-index:2147483646;bottom:95px;left:50%;transform:translateX(-50%);background:#f3dfb4;color:#341010;border:1px solid #fff0cb;border-radius:10px;padding:12px 18px;font-size:12px;line-height:1.5;box-shadow:0 12px 30px #16000355;max-width:calc(100% - 32px);text-align:center;pointer-events:none}
/* Keep toast in the dialog's top layer while the menu is open. */
#je-panel .je-inline-message{color:#f7daa0!important;font-size:11px;margin:0 30px 10px}
.je-menu-add{display:flex!important;align-items:center;justify-content:space-between;gap:10px;width:100%;margin-top:15px!important;padding:10px 13px!important;min-height:40px;border:1px solid #e8ca8c66!important;border-radius:9px!important;background:linear-gradient(125deg,#f3dc9e12,#f3dc9e04)!important;color:#edcf91!important;font:11px var(--font-body,Inter,Arial,sans-serif)!important;letter-spacing:0!important;text-transform:none!important;cursor:pointer;box-shadow:inset 0 1px #ffeacb12!important}
#josephine-menu-preview .jp-food-card>.je-menu-add{width:calc(100% - 32px);margin:0 16px 18px!important}
@media(hover:hover){#je-panel .je-product:hover .je-photo img{transform:scale(1.035)}#je-panel .je-add:hover,.je-menu-add:hover{background:#f5d79320!important}#je-panel .je-gold:hover{filter:brightness(1.05)}}
@media(max-width:600px){
 #je-panel{inset:auto 0 0;margin:0;border-radius:24px 24px 0 0;border-right:1px solid #e5c78b66;height:calc(100dvh - 28px);max-height:calc(100dvh - 28px)}
 #je-panel .je-top{padding:24px 20px 17px}#je-panel h2{font-size:36px;margin:8px 0}#je-panel .je-subtitle{font-size:10px}
 #je-panel .je-tabs{margin:0 17px 13px;gap:1px}#je-panel .je-tabs button{font-size:9px;padding:10px 3px}
 #je-panel .je-search-wrap{margin:0 18px 13px}#je-panel .je-content{padding:0 18px 20px}
 #je-panel .je-products{gap:11px}#je-panel .je-product{border-radius:12px}#je-panel .je-photo{aspect-ratio:1}
 #je-panel .je-product-copy{padding:12px}#je-panel .je-product h3{font-size:21px}#je-panel .je-description{font-size:10px}
 #je-panel .je-eyebrow{font-size:7px}#je-panel .je-price{font-size:12px}#je-panel .je-added-count{font-size:7px}
 #je-panel .je-add{font-size:9px;padding:10px 8px;min-height:42px}#je-panel .je-variants span{padding:5px;font-size:8px}
 #je-panel .je-bottom{padding:15px 19px calc(17px + env(safe-area-inset-bottom,0px))}#je-panel .je-estimate{font-size:8px;margin-bottom:12px}#je-panel .je-total{font-size:9px}#je-panel .je-total strong{font-size:14px}
 #je-panel .je-line{gap:12px}#je-panel .je-line>img{width:64px;height:83px}#je-panel .je-line h3{font-size:21px}
 #je-floating{right:17px;bottom:calc(15px + env(safe-area-inset-bottom,0px));padding:13px 17px;font-size:11px}
}
@media(max-width:355px){#je-panel .je-products{grid-template-columns:1fr}#je-panel .je-photo{aspect-ratio:1.5}}
/* 09 — Existing choices stay visibly selected when the menus reopen. */
#je-panel .je-product.is-selected{border-color:#ebcf8b9c;box-shadow:inset 0 0 0 1px #f2d39326,0 8px 22px #1c00062b}
#je-panel .je-product.is-selected .je-added-count{color:#f7dfaa;font-weight:500}
/* 10 — Cocktail hero: caption, Add button and arrows share the glass's centre. */
#josephine-menu-suite #panel-cocktails .cocktail-caption{--je-front-column:54%;width:var(--je-front-column);margin-left:-.54%;text-align:center;overflow:visible}
#josephine-menu-suite #panel-cocktails .cocktail-caption>.je-menu-add{position:relative!important;inset:auto!important;float:none!important;display:flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;width:max-content!important;max-width:100%!important;min-height:44px!important;margin:16px auto 0!important;padding:11px 14px!important;text-align:center!important;white-space:normal!important;line-height:1.5!important;transform:none!important}
#josephine-menu-suite #panel-cocktails .showcase-wrap>.hero-controls{position:relative!important;left:26.46%!important;right:auto!important;width:max-content!important;max-width:100%!important;margin:14px 0 0!important;transform:translateX(-50%)!important;justify-content:center!important;flex-wrap:nowrap}
@media(max-width:750px){#josephine-menu-suite #panel-cocktails .cocktail-caption{--je-front-column:56%;margin-left:-.56%}#josephine-menu-suite #panel-cocktails .showcase-wrap>.hero-controls{left:27.44%!important}#josephine-menu-suite #panel-cocktails .cocktail-caption>.je-menu-add{padding:10px 8px!important;font-size:10px!important}}
@media(prefers-reduced-motion:reduce){#je-panel,#je-panel *,#je-floating{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
