.rp-menu-choices{width:min(880px,calc(100% - 24px));max-height:90dvh;padding:0;border:1px solid #dedbd5;border-radius:18px;color:#202020;background:#fff;box-shadow:0 24px 90px #0003}.rp-menu-choices::backdrop{background:#16161688}.rp-menu-choice-head{display:flex;gap:20px;justify-content:space-between;padding:24px 28px 18px;border-bottom:1px solid #eee}.rp-menu-choice-head h2{font-size:24px;margin:0 0 8px}.rp-menu-choice-head p{font-size:14px;line-height:1.55;color:#626262;margin:0;max-width:680px}.rp-menu-choice-head button{align-self:flex-start;background:#f5f3ef;border:0;border-radius:50%;width:36px;height:36px;font-size:25px;flex-shrink:0}.rp-menu-choice-sizes,.rp-menu-choice-groups,.rp-menu-choice-notes{padding:18px 28px}.rp-menu-choice-sizes h3{font-size:15px;margin:0 0 10px}.rp-menu-choice-sizes>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:8px}.rp-menu-choice-sizes button{border:1px solid #ddd8cc;border-radius:10px;background:#fff;padding:11px;text-align:left;font-size:13px}.rp-menu-choice-sizes button[aria-pressed=true]{border-color:#a98245;background:#f8f3ea;box-shadow:inset 0 0 0 1px #a98245}.rp-menu-choice-sizes strong{display:block;margin-top:6px}.rp-menu-choice-groups{padding-top:0}.rp-menu-choice-groups details{border:1px solid #e7e4de;border-radius:11px;margin:0 0 12px;overflow:hidden}.rp-menu-choice-groups summary{padding:14px 16px;cursor:pointer;background:#faf9f7;font-size:15px;font-weight:650}.rp-menu-choice-groups summary small{display:block;font-weight:400;color:#6b655c;font-size:12px;margin:5px 0 0 15px}.rp-menu-choice-options{padding:4px 16px 8px;display:grid;grid-template-columns:1fr 1fr;column-gap:24px}.rp-menu-choice-options h4{grid-column:1/-1;margin:14px 0 4px;font-size:13px;color:#73664f}.rp-menu-choice-row{display:flex;gap:12px;align-items:center;justify-content:space-between;min-height:54px;border-bottom:1px solid #f0eeea;padding:9px 0;font-size:13px}.rp-menu-choice-row label{flex:1;cursor:pointer}.rp-menu-choice-row small{display:block;font-size:11px;color:#777;margin-top:4px}.rp-menu-choice-row input{width:19px;height:19px;accent-color:#9b773f}.rp-menu-choice-stepper{display:flex;gap:8px;align-items:center}.rp-menu-choice-stepper button{border:1px solid #e1dcd3;border-radius:7px;background:#faf9f7;width:28px;height:28px;font-size:18px}.rp-menu-choice-stepper output{min-width:14px;text-align:center}.rp-menu-choice-notes{display:block;padding-top:0;font-size:13px}.rp-menu-choice-notes textarea{display:block;box-sizing:border-box;width:100%;margin-top:8px;border:1px solid #ddd8cc;border-radius:8px;padding:10px;font:inherit}.rp-menu-choice-footer{position:sticky;bottom:0;background:#fff;border-top:1px solid #e7e4de;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 28px}.rp-menu-choice-footer label{font-size:12px}.rp-menu-choice-footer input{width:55px;border:1px solid #dedbd5;border-radius:7px;padding:8px;margin-left:5px}.rp-menu-choice-footer>button{background:#24211c;color:white;border:0;border-radius:9px;padding:13px 20px;font-weight:600}.rp-menu-choice-footer>button:disabled{background:#d3d0ca;color:#666;cursor:not-allowed}.rp-menu-choice-footer [data-status]:empty{display:none}@media(max-width:600px){.rp-menu-choice-head,.rp-menu-choice-sizes,.rp-menu-choice-groups,.rp-menu-choice-notes{padding-left:16px;padding-right:16px}.rp-menu-choice-head h2{font-size:20px}.rp-menu-choice-options{grid-template-columns:1fr}.rp-menu-choice-footer{padding:12px 16px}.rp-menu-choice-footer>button{padding:12px;font-size:12px}.rp-menu-choices{max-height:94dvh}}

/* Consistent dialog gutters and immediate selection feedback. */
dialog.rp-menu-choices,dialog.rp-menu-choices *{box-sizing:border-box}
dialog.rp-menu-choices{margin:auto;overflow-y:auto;overscroll-behavior:contain}
dialog.rp-menu-choices .rp-menu-choice-head{gap:16px;padding:22px 24px 18px}
dialog.rp-menu-choices .rp-menu-choice-head>div{min-width:0}
dialog.rp-menu-choices .rp-menu-choice-head h2{font-weight:700;line-height:1.25}
dialog.rp-menu-choices .rp-menu-choice-head button{min-width:36px;min-height:36px;display:grid;place-items:center;line-height:1;padding:0}
dialog.rp-menu-choices>.rp-menu-choice-sizes{padding:18px 24px!important}
dialog.rp-menu-choices .rp-menu-choice-sizes h3{padding:10px 12px;margin:0 0 10px;background:#f6f5f2;border-radius:9px;font-weight:700;line-height:1.3}
dialog.rp-menu-choices .rp-menu-choice-sizes>div{min-width:0}
dialog.rp-menu-choices .rp-menu-choice-sizes button{min-width:0;line-height:1.35;overflow-wrap:anywhere;font-weight:600}
dialog.rp-menu-choices .rp-menu-choice-groups{padding:0 24px 4px}
dialog.rp-menu-choices .rp-menu-choice-groups summary{font-weight:700;line-height:1.35;padding:13px 14px}
dialog.rp-menu-choices .rp-menu-choice-groups summary small{line-height:1.4;font-size:12px}
dialog.rp-menu-choices .rp-menu-choice-groups summary small.has-selections{color:#167343;font-weight:600}
dialog.rp-menu-choices .rp-menu-choice-row{min-width:0;padding:10px 8px;gap:10px;border-radius:8px;transition:background-color .16s ease}
dialog.rp-menu-choices .rp-menu-choice-row label{min-width:0;line-height:1.35;overflow-wrap:anywhere}
dialog.rp-menu-choices .rp-menu-choice-row.is-selected{background:#eef8f1}
dialog.rp-menu-choices .rp-menu-choice-stepper{flex-shrink:0;gap:7px}
dialog.rp-menu-choices .rp-menu-choice-stepper button{display:grid;place-items:center;line-height:1;min-width:34px;min-height:34px;width:34px;height:34px;padding:0;cursor:pointer;transition:background-color .16s,color .16s,border-color .16s,transform .16s}
dialog.rp-menu-choices .rp-menu-choice-stepper button:disabled{opacity:.38;cursor:default}
dialog.rp-menu-choices .rp-menu-choice-stepper output{font-variant-numeric:tabular-nums;font-weight:600;min-width:18px}
dialog.rp-menu-choices .is-selected .rp-menu-choice-stepper output{color:#167343}
dialog.rp-menu-choices .is-selected button[data-step="1"]{background:#208447;border-color:#208447;color:#fff}
dialog.rp-menu-choices button.is-added{animation:rp-choice-added .24s ease}
dialog.rp-menu-choices button:focus-visible,dialog.rp-menu-choices input:focus-visible{outline:2px solid #208447;outline-offset:2px}
dialog.rp-menu-choices .rp-menu-choice-footer{gap:10px;z-index:2;box-shadow:0 -4px 14px #00000005}
dialog.rp-menu-choices .rp-menu-choice-footer label{display:flex;align-items:center;gap:7px;white-space:nowrap}
dialog.rp-menu-choices .rp-menu-choice-footer input{margin:0}
dialog.rp-menu-choices .rp-menu-choice-footer>button{white-space:nowrap;line-height:1.3}
@keyframes rp-choice-added{50%{transform:scale(1.12);background:#146534}}
@media(max-width:600px){
 dialog.rp-menu-choices{width:calc(100% - 24px);max-width:calc(100% - 24px);max-height:calc(100dvh - 24px);border-radius:16px}
 dialog.rp-menu-choices .rp-menu-choice-head{padding:18px 16px 16px;gap:12px}
 dialog.rp-menu-choices .rp-menu-choice-head h2{font-size:19px;margin:0 0 7px}
 dialog.rp-menu-choices .rp-menu-choice-head p{font-size:13px;line-height:1.5}
 dialog.rp-menu-choices>.rp-menu-choice-sizes{padding:16px!important}
 dialog.rp-menu-choices .rp-menu-choice-sizes>div{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}
 dialog.rp-menu-choices .rp-menu-choice-sizes button{padding:11px 10px;font-size:12px;min-height:76px}
 dialog.rp-menu-choices .rp-menu-choice-sizes strong{font-size:13px;margin-top:6px}
 dialog.rp-menu-choices .rp-menu-choice-groups{padding:0 16px 4px}
 dialog.rp-menu-choices .rp-menu-choice-options{padding:3px 6px 6px;grid-template-columns:minmax(0,1fr)}
 dialog.rp-menu-choices .rp-menu-choice-groups summary{padding:12px;font-size:14px}
 dialog.rp-menu-choices .rp-menu-choice-row{font-size:13px;min-height:62px}
 dialog.rp-menu-choices .rp-menu-choice-row small{font-size:11px;line-height:1.4}
 dialog.rp-menu-choices .rp-menu-choice-stepper{gap:6px}
 dialog.rp-menu-choices .rp-menu-choice-stepper button{width:36px;height:36px;min-width:36px;min-height:36px;font-size:20px}
 dialog.rp-menu-choices .rp-menu-choice-notes{padding:0 16px 16px}
 dialog.rp-menu-choices .rp-menu-choice-footer{padding:12px 16px max(12px,env(safe-area-inset-bottom));gap:8px}
 dialog.rp-menu-choices .rp-menu-choice-footer label{font-size:12px;gap:6px}
 dialog.rp-menu-choices .rp-menu-choice-footer input{width:46px;min-width:0;padding:8px 5px;font-size:16px}
 dialog.rp-menu-choices .rp-menu-choice-footer>button{padding:13px 10px;font-size:12px;min-height:44px;flex:1}
}
@media(prefers-reduced-motion:reduce){dialog.rp-menu-choices button.is-added{animation:none}dialog.rp-menu-choices .rp-menu-choice-row,dialog.rp-menu-choices button{transition:none}}

/* Focused section headings: one frame per group, with a clear header divider. */
dialog.rp-menu-choices .rp-menu-choice-sizes h3{border:1px solid #dcd8d0;background:#f7f6f3}
dialog.rp-menu-choices .rp-menu-choice-groups details{border-color:#dcd8d0}
dialog.rp-menu-choices .rp-menu-choice-groups summary{background:#f7f6f3}
dialog.rp-menu-choices .rp-menu-choice-groups details[open]>summary{border-bottom:1px solid #dcd8d0}
dialog.rp-menu-choices .rp-menu-choice-head{border-bottom-color:#dcd8d0}
dialog.rp-menu-choices .rp-menu-choice-footer{border-top-color:#dcd8d0}

/* Prominent subgroup titles; keep option rows and counters at their existing size. */
dialog.rp-menu-choices .rp-menu-choice-options h4{font-size:24px;font-weight:700!important;line-height:1.25;letter-spacing:-.015em;color:#202020;margin:20px 0 8px}
@media(max-width:600px){dialog.rp-menu-choices .rp-menu-choice-options h4{font-size:22px;margin:18px 0 8px}}

/* Keep authored paragraphs in imported menu descriptions. */
.rp-menu-choices .rp-menu-choice-head p { white-space: pre-line; }
.rp-pizza-product--custom-item .rp-pizza-product-desc,
.rp-pizza-product--custom-item .rp-pizza-product-desc-main { white-space: pre-line !important; -webkit-line-clamp: unset; overflow: visible; display: block; }
