.menu-page.public main{background:white;margin:0;padding-bottom:40px}
.menu-page-wrap{width:100%;max-width:1000px;margin:0 auto;padding:32px 24px}
.menu-page-wrap:has(.detail-picture){max-width:840px;margin-left:clamp(24px,9vw,120px);margin-right:auto;padding-left:0;padding-right:0}
.menu-page #menu-dialog{display:block;position:static;inset:auto;margin:0;width:100%;max-width:none;max-height:none;padding:0;border:0;border-radius:0;background:transparent;overflow:visible;box-shadow:none;color:#25312b}
.menu-page #menu-dialog .dialog-inner{padding:0}
.menu-page #menu-dialog h2{font-size:24px;margin:0 0 24px;outline:none}
.menu-page #menu-dialog:has(.detail-picture){display:grid;grid-template-columns:200px minmax(0,1fr);gap:28px;max-width:none;align-items:start}
.menu-page #menu-dialog .detail-picture{position:sticky;top:24px;display:block;width:200px;height:200px;max-width:200px;margin:0;object-fit:contain;border-radius:10px}
.menu-page #menu-dialog:has(.detail-picture) .dialog-inner{padding:0}
.menu-page #menu-dialog:has(.detail-picture) h2{font-size:21px;line-height:1.3;margin:0 0 8px}
.menu-page #menu-dialog:has(.detail-picture) .dialog-inner>p{font-size:14px;line-height:1.5;margin:0 0 10px}
.menu-page #menu-dialog:has(.detail-picture) .dialog-inner>strong{display:block;margin-bottom:20px;font-size:16px}
.menu-page .add-row{position:static;background:white;border-top:1px solid #eef0f4;padding:16px 0 0;margin-top:18px;justify-content:flex-start}
.menu-page #menu-dialog:has(.detail-picture) .add-row>.primary{flex:0 1 auto;min-height:42px;padding:10px 22px}
.menu-page #menu-dialog:not(:has(.detail-picture)){max-width:760px;margin:0 auto}
.menu-page .bag-item{padding:20px 0}
.menu-page .local-order{padding:22px 0}
.menu-page #menu-dialog .option-group{border:0;border-radius:0;border-top:1px solid #edf0f4;padding:14px 0 0;margin:16px 0 0;min-width:0}
.menu-page #menu-dialog .option-group legend{font-size:14px;padding:0 8px 0 0}
.menu-page #menu-dialog .option-group>p{margin:0 0 6px;font-size:12px}
.menu-page #menu-dialog .option-group label{padding:11px 0;line-height:1.4}
.menu-page #menu-dialog .option-group input{margin:0 4px 0 0;width:15px;height:15px;flex-shrink:0}
.menu-page #menu-dialog .option-group label:has(input:checked){color:#087cc6;background:#f2f9fe}
.menu-page #menu-dialog .option-group input{accent-color:#1298ef;cursor:pointer}
.menu-page #menu-dialog .option-group label{cursor:pointer}
.menu-page #menu-dialog .option-group small{font-weight:400;color:#606d7a}
.menu-page #menu-dialog .observation-label{margin-top:24px;font-size:14px}
.menu-page #menu-dialog #observation{height:76px;min-height:76px;max-height:150px}
@media(min-width:701px) and (max-width:1000px){.menu-page-wrap:has(.detail-picture){width:calc(100% - 64px);margin-left:32px}}
@media(max-width:700px){.menu-page-wrap{padding:26px 18px}.menu-page-wrap:has(.detail-picture){max-width:100%;margin:0;padding:26px 18px}.menu-page #menu-dialog:has(.detail-picture){grid-template-columns:minmax(0,1fr);gap:22px;max-width:500px;margin:0 auto}.menu-page #menu-dialog .detail-picture{position:static;margin:0 auto;width:180px;height:180px;max-width:180px}.menu-page #menu-dialog h2{font-size:22px}.menu-page .bag-item{flex-wrap:wrap}.menu-page .add-row{padding-bottom:env(safe-area-inset-bottom)}}
