/* 閲覧専用の献立。注文画面の写真・カードの余白には影響しません。 */
.public-menu-audience{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;margin:20px 0}
.public-menu-audience a,.public-menu-audience-label{padding:9px 17px;border-radius:8px;font-size:14px}
.public-menu-audience a{border:1px solid #bfd6c8;background:#fff;color:#315d46}
.public-menu-audience-label{background:#e2efe6;color:#174c35;font-weight:700}
.menu-view-only-page .menu-view-types{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;padding:26px 28px;background:#fff}
.menu-view-only-page .menu-view-type{grid-template-columns:160px minmax(0,1fr);gap:22px;align-items:start;min-height:0}
.menu-view-only-page .menu-view-type>.menu-view-type__body{padding:2px 0;min-width:0}
.menu-view-only-page .menu-view-type__title{flex-wrap:wrap;gap:8px;margin-bottom:12px}
.menu-view-only-page .menu-view-type__title strong{font-size:13px}
.menu-view-only-page .menu-view-type p{font-size:14px;line-height:1.9;overflow-wrap:anywhere}
.menu-view-type__contents p+p{margin-top:12px!important}
.public-menu-photo{position:relative;display:block;align-self:start;padding:0;border:0;background:#f4f7f3;cursor:zoom-in;width:100%;aspect-ratio:1;text-align:left;overflow:hidden;border-radius:12px}
.menu-view-only-page .public-menu-photo img{width:100%;height:100%;min-height:0;aspect-ratio:1;object-fit:contain;display:block}
.public-menu-photo span{position:absolute;bottom:9px;right:9px;background:#fffdf4eb;padding:4px 9px;border-radius:20px;font-size:11px;color:#234632}
.public-menu-dialog{max-width:min(900px,94vw);max-height:94vh;border:0;border-radius:16px;padding:20px;background:#fff}
.public-menu-dialog::backdrop{background:#102318bd}
.public-menu-dialog>button{float:right;padding:8px 15px;border-radius:8px;background:#edf5ef;border:1px solid #cadfce;color:#174c35;cursor:pointer}
.public-menu-dialog h2{font-size:16px;clear:both;padding-top:10px}
.public-menu-dialog img{display:block;max-width:100%;max-height:72vh;margin:auto;object-fit:contain}
.public-menu-photo:focus-visible{outline:4px solid #92bfab;outline-offset:3px}
@media(max-width:1000px){
  .menu-view-only-page .menu-view-types{grid-template-columns:1fr;gap:24px}
  .menu-view-only-page .menu-view-type{grid-template-columns:180px minmax(0,1fr)}
  .menu-view-only-page .menu-view-type+.menu-view-type{padding-top:24px;border-top:1px solid #e1ebe4}
}
@media(max-width:620px){
  .menu-view-only-page .menu-view-types{padding:20px 16px;gap:20px}
  .menu-view-only-page .menu-view-type{grid-template-columns:minmax(90px,32%) minmax(0,1fr);gap:16px}
  .menu-view-only-page .menu-view-type+.menu-view-type{padding-top:20px}
  .menu-view-only-page .menu-view-type__title{margin-bottom:9px}
  .menu-view-only-page .menu-view-type p{font-size:13px;line-height:1.85}
  .public-menu-photo span{bottom:5px;right:5px;padding:3px 7px;font-size:10px}
  .public-menu-audience{gap:8px}
  .public-menu-audience a,.public-menu-audience-label{font-size:12px;padding:8px 12px}
}
