/* Catalogue dish popup, shared restaurant styling. */
.restaurant-menu-content{margin-bottom:24px}.restaurant-menu-all{display:inline-block;margin-top:20px}.restaurant-food-dialog{width:min(520px,calc(100vw - 32px));max-height:90dvh;border:1px solid #d8e3d8;border-radius:24px;padding:32px;color:#243f2f;background:#fff;box-sizing:border-box}.restaurant-food-dialog::backdrop{background:#152e2466}.restaurant-food-dialog form{display:grid;gap:18px}.restaurant-food-dialog h2,.restaurant-food-dialog p{margin:0}.restaurant-food-dialog label{display:grid;gap:8px}.restaurant-food-dialog fieldset label{display:flex;align-items:center;padding:8px 0}.restaurant-food-dialog select,.restaurant-food-dialog input[type=number]{padding:12px;border:1px solid #d8e3d8;border-radius:10px;background:#fafcf9;font:inherit;width:100%;box-sizing:border-box}.restaurant-food-close{justify-self:end;border:0;background:#edf3e9;border-radius:50%;width:36px;height:36px;font-size:24px}.restaurant-food-choice-footer{display:flex;align-items:end;gap:16px}.restaurant-food-choice-footer label{width:90px}.restaurant-food-choice-footer .primary-button{flex:1}.restaurant-option-tags{display:flex;gap:8px;flex-wrap:wrap}.restaurant-option-tags button{padding:8px 12px;border:1px solid #d8e3d8;border-radius:16px;background:#edf3e9;color:#243f2f}.restaurant-option-editor p{font-size:13px}.restaurant-choice-status:empty{display:none}.restaurant-cart-item small{display:block}.restaurant-food-dialog fieldset{border:1px solid #d8e3d8;border-radius:12px}@media(max-width:480px){.restaurant-food-dialog{padding:20px}.restaurant-food-choice-footer{gap:10px}}
.restaurant-choice-quantity{display:grid;gap:8px}.restaurant-choice-quantity>div{display:flex;align-items:center;border:1px solid #d8e3d8;border-radius:10px;overflow:hidden}.restaurant-choice-quantity button{width:36px;height:44px;border:0;background:#edf3e9;color:#243f2f;font-size:22px}.restaurant-choice-quantity input[type=number]{width:48px;padding:8px 2px;border:0;text-align:center;appearance:textfield}.restaurant-choice-quantity input::-webkit-inner-spin-button{appearance:none}.restaurant-food-choice-footer .restaurant-choice-quantity{flex:none}
.restaurant-choice-prices{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;padding:16px;border:1px solid #dce7d9;background:#f4f8f1;border-radius:14px}.restaurant-choice-prices>div{display:grid;gap:6px}.restaurant-choice-prices>div>span{font-size:12px;color:#64786b}.restaurant-choice-prices b{font-size:20px;overflow-wrap:anywhere}.restaurant-choice-prices>small{grid-column:1/-1;color:#64786b;font-size:12px;line-height:1.5}
.restaurant-food-dialog .restaurant-choice-image{display:block;width:100%;height:180px;object-fit:contain;border-radius:14px;background:#fff}.restaurant-food-dialog .restaurant-food-close{display:grid;place-items:center;padding:0;line-height:1}@media(max-width:480px){.restaurant-food-dialog .restaurant-choice-image{height:150px}}
.restaurant-extra-list{display:grid;gap:10px}.restaurant-extra-row{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #dbe5d7;border-radius:12px}.restaurant-extra-row>b{flex:1;overflow-wrap:anywhere}.restaurant-extra-row label{width:150px;flex-shrink:0}.restaurant-extra-row button{width:44px;height:44px;display:grid;place-items:center;border:1px solid #e6c7c2;background:#fff;border-radius:10px;color:#a33c31;cursor:pointer}.restaurant-choice-extras label{display:flex;align-items:center;gap:10px;margin:12px 0}.restaurant-choice-extras input{width:auto}.restaurant-choice-extras span{flex:1}.restaurant-choice-extras b{white-space:nowrap}@media(max-width:400px){.restaurant-extra-row{flex-wrap:wrap}.restaurant-extra-row>b{flex-basis:100%}.restaurant-extra-row label{flex:1}}
.restaurant-choice-comment textarea{resize:vertical;width:100%;min-height:76px;box-sizing:border-box;border:1px solid #d8e3d8;border-radius:12px;padding:12px;background:#fafcf9;font:inherit;color:inherit}.restaurant-cart-comment{white-space:pre-wrap;overflow-wrap:anywhere}
body.restaurant-cart-open{overflow:hidden}

/* Draw the close icon geometrically so font metrics cannot shift its centre. */
.restaurant-food-dialog .restaurant-food-close,.restaurant-cart-header button[data-cart-close]{position:relative;display:grid;place-items:center;padding:0;font-size:0;line-height:1;flex-shrink:0}
.restaurant-food-dialog .restaurant-food-close::before,.restaurant-food-dialog .restaurant-food-close::after,.restaurant-cart-header button[data-cart-close]::before,.restaurant-cart-header button[data-cart-close]::after{content:"";position:absolute;left:50%;top:50%;width:16px;height:2px;border-radius:1px;background:currentColor;transform:translate(-50%,-50%) rotate(45deg)}
.restaurant-food-dialog .restaurant-food-close::after,.restaurant-cart-header button[data-cart-close]::after{transform:translate(-50%,-50%) rotate(-45deg)}
