/* Landing-page category presentation only. Legacy rendering is deliberately opt-in unchanged. */
[data-rp-category-template="legacy"] .rp-mcat-new-media { display:none !important; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"]) { --mcat-accent:var(--theme-button-color,#001931); --mcat-on-accent:var(--theme-button-text-color,#fff); gap:14px; min-width:0; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"]) .rp-mcat-shell { padding:0!important; margin:0!important; border:0!important; background:transparent!important; box-shadow:none!important; width:100%!important; grid-column:auto!important; justify-self:stretch!important; min-width:0; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"]) .rp-master-menu-category-row { width:100%!important; justify-self:stretch; gap:14px; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"]) .rp-mcat-item { position:relative; display:flex; flex-direction:column; width:100%!important; height:100%!important; min-width:0; padding:0!important; margin:0!important; border:1px solid #dde3e9; border-radius:14px; overflow:hidden; isolation:isolate; background:#fff!important; background-image:none!important; color:#152438!important; text-decoration:none!important; aspect-ratio:auto; box-shadow:none; transition:border-color .15s ease,box-shadow .15s ease; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"]) .rp-mcat-item::before, :is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"]) .rp-mcat-item::after { display:none!important; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"]) .rp-mcat-media { display:block!important; position:relative; inset:auto; flex:none; width:100%; height:auto; aspect-ratio:4/3; overflow:hidden; background:linear-gradient(135deg,#e5ebed,#cbd9d9)!important; z-index:0; margin:0; border:0; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"]) .rp-mcat-media img { display:block; width:100%!important; height:100%!important; object-fit:cover!important; object-position:center; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"]) .rp-mcat-label { position:relative; inset:auto; display:flex; justify-content:center; align-items:center; flex:1; padding:14px 12px!important; min-width:0; width:100%; z-index:2; box-sizing:border-box; background:transparent!important; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"]) .rp-mcat-label, :is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"]) .rp-mcat-text { color:#152438!important; -webkit-text-fill-color:#152438!important; font-family:inherit; font-size:15px!important; font-weight:650!important; line-height:1.35!important; letter-spacing:0!important; text-transform:none!important; text-shadow:none!important; white-space:normal!important; overflow-wrap:anywhere!important; word-break:normal; text-align:center!important; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"]) .rp-mcat-text { display:block; max-width:100%!important; width:100%!important; padding:0!important; margin:0!important; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"]) .rp-mcat-item:hover, :is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"]) .rp-mcat-item.is-active, :is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"]) .rp-mcat-item[aria-current="true"] { border-color:var(--mcat-accent); box-shadow:0 0 0 2px var(--mcat-accent); opacity:1; transform:none; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"]) .rp-mcat-item:focus-visible { outline:3px solid var(--mcat-accent); outline-offset:3px; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"])[data-rp-category-template="square"] .rp-mcat-media { aspect-ratio:1; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"]):is([data-rp-category-template="square"],[data-rp-category-template="wide"]) .rp-mcat-label { position:absolute; inset:0; padding:18px!important; background:linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.60))!important; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"]):is([data-rp-category-template="square"],[data-rp-category-template="wide"]) .rp-mcat-label,
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"]):is([data-rp-category-template="square"],[data-rp-category-template="wide"]) .rp-mcat-text { color:#fff!important; -webkit-text-fill-color:#fff!important; font-size:clamp(16px,1.5vw,22px)!important; font-weight:750!important; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"])[data-rp-category-template="wide"] .rp-mcat-media { aspect-ratio:2.2; min-height:100px; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"])[data-rp-category-template="circle"] .rp-mcat-item { border-radius:12px; padding:10px!important; border-color:transparent; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"])[data-rp-category-template="circle"] .rp-mcat-media { width:78%; margin:0 auto; aspect-ratio:1; border-radius:50%; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"])[data-rp-category-template="circle"] .rp-mcat-label { padding:12px 0 2px!important; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"])[data-rp-category-template="compact"] .rp-mcat-media { display:none!important; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"])[data-rp-category-template="compact"] .rp-mcat-item { border-radius:10px; min-height:54px; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"])[data-rp-category-template="compact"] .rp-mcat-label { padding:12px!important; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"])[data-rp-category-template="compact"] .rp-mcat-item.is-active,
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"])[data-rp-category-template="compact"] .rp-mcat-item[aria-current="true"] { background:var(--mcat-accent)!important; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"])[data-rp-category-template="compact"] .rp-mcat-item.is-active .rp-mcat-text,
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"])[data-rp-category-template="compact"] .rp-mcat-item[aria-current="true"] .rp-mcat-text { color:var(--mcat-on-accent)!important; -webkit-text-fill-color:var(--mcat-on-accent)!important; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"])[data-rp-category-template="horizontal"].rp-pizza-public-tiles,
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"])[data-rp-category-template="horizontal"].rp-mcat-preview { display:flex; overflow-x:auto; scroll-snap-type:x proximity; padding:4px 4px 14px; scrollbar-width:thin; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"])[data-rp-category-template="horizontal"].rp-pizza-public-tiles::-webkit-scrollbar { display:block; height:5px; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"])[data-rp-category-template="horizontal"] .rp-mcat-shell { flex:0 0 176px; width:176px!important; scroll-snap-align:start; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"])[data-rp-category-template="horizontal"].rp-master-menu-category-strip { display:block; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"])[data-rp-category-template="horizontal"] .rp-master-menu-category-row { display:flex; overflow-x:auto; scroll-snap-type:x proximity; padding:4px 4px 14px; box-sizing:border-box; scrollbar-width:thin; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"])[data-rp-category-template="horizontal"] .rp-master-menu-category-row > .rp-mcat-item { flex:0 0 176px; width:176px!important; height:auto!important; scroll-snap-align:start; }
:is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"])[data-rp-category-template="horizontal"] .rp-mcat-media { aspect-ratio:4/3; }
@media(max-width:767px) {
 :is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"]) { gap:10px; }
 :is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"]) .rp-master-menu-category-row { gap:10px; }
 :is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"]) .rp-mcat-label, :is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"]) .rp-mcat-text { font-size:14px!important; }
 :is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"])[data-rp-category-template="horizontal"] .rp-mcat-shell,
 :is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"])[data-rp-category-template="horizontal"] .rp-master-menu-category-row > .rp-mcat-item { flex-basis:144px; width:144px!important; }
}
@media(prefers-reduced-motion:reduce) { :is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"]) .rp-mcat-item { transition:none; } }

/* Desktop rows keep the full grid's column width, including incomplete last rows. */
@media (min-width: 1025px) {
  :is(body, #portal-main) [data-rp-category-template]:not([data-rp-category-template="legacy"]):not([data-rp-category-template="horizontal"]) .rp-master-menu-category-row {
    grid-template-columns: repeat(var(--rp-master-menu-category-max-columns, 5), minmax(0, 1fr));
  }
}
