.rwc-ordering{display:grid;grid-template-columns:1.25fr .75fr;gap:20px;margin-top:12px}
.rwc-ordering *{box-sizing:border-box}
.rwc-panel,.rwc-cart,.rwc-modal__dialog{background:#fff;border:1px solid #f0dec7;border-radius:24px;box-shadow:0 12px 32px rgba(0,0,0,.05)}
.rwc-panel{padding:18px}
.rwc-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.rwc-toolbar__actions{display:flex;align-items:center;gap:10px}
.rwc-select,.rwc-input,.rwc-textarea{width:100%;padding:12px 14px;border:1px solid #dec5a7;border-radius:16px;font:inherit;background:#fff}
.rwc-cat-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;touch-action:pan-x;background:#fff;border-left:1px solid #f0dec7;border-right:1px solid #f0dec7;padding:0}
.rwc-cat-scroll::-webkit-scrollbar{display:none}
.rwc-categories{display:flex;flex-direction:row;flex-wrap:nowrap;gap:12px;padding:12px 16px;width:max-content;min-width:100%}
.rwc-panel:has(+ .rwc-cat-scroll){border-radius:24px 24px 0 0;border-bottom:none;margin-bottom:0}
.rwc-panel--menu{border-radius:0 0 24px 24px;border-top:none;margin-top:0}
.rwc-cat-pill{display:flex;flex-direction:column;align-items:center;gap:6px;border:none;background:none;cursor:pointer;flex-shrink:0;width:64px;scroll-snap-align:start}
.rwc-cat-pill__thumb{width:56px;height:56px;border-radius:50%;overflow:hidden;border:2px solid #e5e7eb;background:#f3f4f6;display:flex;align-items:center;justify-content:center;font-size:24px}
.rwc-cat-pill.is-active .rwc-cat-pill__thumb{border:2.5px solid #f97316;background:#fff7ed}
.rwc-cat-pill__thumb img{width:100%;height:100%;object-fit:cover}
.rwc-cat-pill__name{font-size:11px;font-weight:500;color:#374151;text-align:center;line-height:1.2;max-width:64px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rwc-cat-pill.is-active .rwc-cat-pill__name{color:#f97316;font-weight:600}
.rwc-grid{display:grid;gap:12px}
.rwc-item{display:flex;justify-content:space-between;gap:12px;padding:16px;border:1px solid #f2e2cf;border-radius:20px;align-items:stretch;overflow:hidden}
.rwc-item__media{width:92px;min-width:92px;height:92px;border-radius:18px;overflow:hidden;background:#fff1e6;border:1px solid #f2e2cf}
.rwc-item__image{display:block;width:100%;height:100%;object-fit:cover}
.rwc-item__media--fallback{display:flex;align-items:center;justify-content:center}
.rwc-item__emoji{font-size:2rem}
.rwc-item__meta{flex:1;min-width:0}
.rwc-item__meta h4{margin:0 0 8px;font-size:1rem}
.rwc-item__meta p{margin:0;color:#4b5563;line-height:1.5;font-size:.93rem}
.rwc-item__hint{margin-top:8px}
.rwc-item__price{display:block;font-weight:800;margin-top:10px}
.rwc-item__cta{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0}
.rwc-btn{border:none;border-radius:999px;padding:11px 16px;font:inherit;font-weight:800;cursor:pointer}
.rwc-btn:disabled{opacity:.45;cursor:not-allowed}
.rwc-btn--primary{background:#f97316;color:#fff}
.rwc-btn--secondary{background:#111;color:#fff}
.rwc-btn--ghost{background:#fff;border:1px solid #e3ceb4}
.rwc-btn--tiny{padding:8px 12px;font-size:.88rem}
.rwc-pill{display:inline-flex;padding:6px 10px;border-radius:999px;background:#fff7ed;color:#c2410c;font-size:.8rem;font-weight:800}
.rwc-item.is-disabled{opacity:.6}
.rwc-item--clickable{cursor:pointer}
.rwc-item--clickable:hover{background:#fafafa;transition:background .15s}
.rwc-item--clickable .rwc-btn{pointer-events:none}
.rwc-cart{padding:18px;position:sticky;top:90px;height:fit-content}
.rwc-cart{display:none!important}
.rwc-cart__intro{padding:14px 16px;border:1px dashed #ebcfb0;border-radius:18px;background:#fffaf4;color:#7c5e3d;margin-bottom:14px}
.rwc-cart__items{display:grid;gap:10px;max-height:280px;overflow:auto;margin:14px 0}
.rwc-cart__row{padding:12px;border-radius:18px;background:#fff7ed}
.rwc-cart__row strong{display:block}
.rwc-cart-item-edit{cursor:pointer;transition:background .15s}
.rwc-cart-item-edit:hover{background:#fef3e8;border-radius:10px}
.rwc-cart__summary{display:grid;gap:8px;margin:14px 0}
.rwc-cart__summary div{display:flex;justify-content:space-between;gap:12px}
.rwc-cart__empty,.rwc-ordering__loading,.rwc-unavailable{padding:24px;border-radius:24px;background:#fff;border:1px dashed #ebcfb0;color:#4b5563}
.rwc-checkout{display:grid;gap:14px;padding-top:14px;border-top:1px solid #f0dec7}
.rwc-checkout__header{display:flex;align-items:center;justify-content:space-between;gap:12px}
.rwc-checkout__fields{display:grid;gap:12px}
.rwc-checkout__field{display:grid;gap:6px}
.rwc-checkout__label{font-weight:700;color:#7c5e3d;font-size:.92rem}
.rwc-modal{position:fixed;inset:0;background:rgba(17,17,17,.55);display:none;align-items:center;justify-content:center;padding:20px;z-index:99999}
.rwc-modal.is-open{display:flex}
.rwc-modal__dialog{width:min(680px,100%);max-height:90vh;overflow:auto;padding:24px}
.rwc-modal__hero{display:flex;align-items:flex-start;gap:14px;min-width:0}
.rwc-modal__image{width:88px;height:88px;border-radius:18px;object-fit:cover;display:block;background:#fff1e6;border:1px solid #ecd6be}
.rwc-modal__image--fallback{display:flex;align-items:center;justify-content:center;font-size:2rem}
.rwc-modal__section{margin-top:18px}
.rwc-helper{margin-top:6px;color:#7c5e3d;font-size:.88rem}
.rwc-option-list{display:grid;gap:10px}
.rwc-option{display:flex;justify-content:space-between;gap:10px;padding:12px;border:1px solid #ecd6be;border-radius:16px}
.rwc-option--oos{opacity:.45;cursor:not-allowed;pointer-events:none}
.rwc-option--oos input[type="checkbox"],.rwc-option--oos input[type="radio"]{cursor:not-allowed}
.rwc-oos-badge{display:inline-block;margin-left:6px;font-size:11px;font-weight:600;color:#e53e3e;background:#fff5f5;border:1px solid #feb2b2;border-radius:4px;padding:1px 5px;vertical-align:middle;letter-spacing:.2px}
.rwc-confirmation{padding:18px;border-radius:20px;margin-top:14px;border:1px solid transparent}
.rwc-confirmation__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.rwc-confirmation__meta{margin-top:10px;font-size:.92rem}
.rwc-confirmation--pending{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}
.rwc-confirmation--confirmed{background:#ecfdf5;color:#166534;border-color:#bbf7d0}
.rwc-confirmation--rejected{background:#fef2f2;color:#b91c1c;border-color:#fecaca}
@media (max-width:960px){.rwc-ordering{grid-template-columns:1fr}.rwc-cart{position:static}}
@media (max-width:640px){
.rwc-item{padding:12px;gap:10px}
.rwc-item__media{width:76px;min-width:76px;height:76px;border-radius:16px}
.rwc-item__meta h4{font-size:.96rem}
.rwc-item__meta p{font-size:.88rem}
.rwc-item__cta{align-items:stretch}
.rwc-btn{padding:10px 14px}
.rwc-modal__dialog{padding:18px}
.rwc-modal__hero{gap:10px}
.rwc-modal__image{width:72px;height:72px;border-radius:16px}
.rwc-checkout__header,.rwc-confirmation__header{flex-direction:column;align-items:stretch}
}
.rwc-nav-footer{position:fixed;bottom:0;left:0;right:0;height:64px;background:#fff;border-top:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-around;z-index:1000}
.rwc-nav-tab{flex:1;padding:10px 4px 8px;display:flex;flex-direction:column;align-items:center;gap:3px;border:none;background:none;cursor:pointer}
.rwc-nav-tab .rwc-nav-icon{font-size:20px;line-height:1}
.rwc-nav-tab .rwc-nav-label{font-size:11px;font-weight:700;color:#4b5563}
.rwc-nav-tab.is-active .rwc-nav-icon,.rwc-nav-tab.is-active .rwc-nav-label{color:#f97316}
.rwc-nav-tab--cart{position:relative}
.rwc-nav-tab--cart .rwc-nav-icon{font-size:28px}
.rwc-nav-badge{position:absolute;top:6px;right:calc(50% - 18px);background:#f97316;color:#fff;border-radius:9999px;font-size:10px;font-weight:700;min-width:18px;height:18px;display:flex;align-items:center;justify-content:center}
.rwc-nav-badge[hidden]{display:none}
@keyframes rwc-cart-pulse{0%{transform:scale(1)}30%{transform:scale(1.25)}60%{transform:scale(.95)}100%{transform:scale(1)}}
.rwc-nav-tab--cart.rwc-pulse .rwc-nav-icon{animation:rwc-cart-pulse .4s ease-out}
@media (max-width:1023px){.rwc-ordering{padding-bottom:64px}}
@media (min-width:1024px){.rwc-ordering{max-width:680px;margin:0 auto;display:block;padding-bottom:80px}.rwc-panel{width:100%}.rwc-cart{display:none}.rwc-nav-footer{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:680px;max-width:100%;border-radius:0;border-top:1px solid #e5e7eb;border-left:none;border-right:none;background:rgba(255,255,255,.97);backdrop-filter:blur(8px);box-shadow:0 -1px 0 #e5e7eb}}
.rwc-add-more-btn{display:block;background:none;border:none;color:#f97316;font-size:13px;font-weight:500;cursor:pointer;padding:0 0 12px 0;text-align:left}
.rwc-add-more-btn:hover{opacity:.75}
.rwc-cart-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:900;opacity:0;pointer-events:none;transition:opacity .3s ease}
.rwc-cart-overlay.is-open{opacity:1;pointer-events:all}
.rwc-cart-drawer{position:absolute;bottom:0;left:0;right:0;background:#fff;border-radius:20px 20px 0 0;max-height:88vh;overflow-y:auto;transform:translateY(100%);transition:transform .35s cubic-bezier(.32,.72,0,1);padding-bottom:80px}
.rwc-cart-overlay.is-open .rwc-cart-drawer{transform:translateY(0)}
.rwc-cart-drawer__handle{width:40px;height:4px;background:#d1d5db;border-radius:2px;margin:12px auto 0}
.rwc-cart-drawer__content{padding:16px}
@media (min-width:1024px){.rwc-cart-drawer{position:absolute;top:50%;left:50%;right:auto;bottom:auto;transform:translate(-50%,-40%);width:480px;max-height:80vh;border-radius:16px}.rwc-cart-overlay.is-open .rwc-cart-drawer{transform:translate(-50%,-50%)}}
.rwc-overlay-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #f3f4f6}
.rwc-overlay-header h3{font-size:16px;font-weight:600;color:#111827;margin:0}
.rwc-overlay-close{background:none;border:none;font-size:18px;color:#6b7280;cursor:pointer;padding:4px;line-height:1}
.rwc-overlay-actions{display:flex;flex-direction:column;gap:10px;margin-top:20px}
.rwc-toast{position:fixed;bottom:84px;left:50%;transform:translateX(-50%) translateY(10px);background:#111827;color:#fff;padding:10px 18px;border-radius:999px;font-size:13px;font-weight:600;z-index:1100;opacity:0;pointer-events:none;transition:opacity .25s ease,transform .25s ease;max-width:90vw;text-align:center}
.rwc-toast.is-visible{opacity:1;transform:translateX(-50%) translateY(0)}
.rwc-dj-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:1100;display:flex;align-items:flex-end;justify-content:center;opacity:0;pointer-events:none;transition:opacity .3s ease}
.rwc-dj-overlay.is-open{opacity:1;pointer-events:all}
.rwc-dj-modal{background:#fff;border-radius:20px 20px 0 0;width:100%;max-width:680px;max-height:88vh;overflow-y:auto;position:relative;transform:translateY(100%);transition:transform .4s cubic-bezier(.32,.72,0,1);padding-bottom:24px}
.rwc-dj-overlay.is-open .rwc-dj-modal{transform:translateY(0)}
.rwc-dj-close{position:absolute;top:12px;right:12px;background:rgba(0,0,0,.1);border:none;border-radius:50%;width:32px;height:32px;font-size:16px;cursor:pointer;z-index:1;display:flex;align-items:center;justify-content:center;color:#111827}
.rwc-dj-photo{width:100%;height:200px;object-fit:cover;border-radius:20px 20px 0 0;overflow:hidden;background:#f97316;display:flex;align-items:center;justify-content:center;font-size:64px}
.rwc-dj-photo img{width:100%;height:100%;object-fit:cover}
.rwc-dj-body{padding:16px 20px}
.rwc-dj-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#f97316;margin-bottom:4px}
.rwc-dj-title{font-size:20px;font-weight:700;color:#111827;margin-bottom:4px}
.rwc-dj-desc{font-size:13px;color:#6b7280;margin-bottom:12px;line-height:1.5}
.rwc-dj-items{margin-bottom:12px}
.rwc-dj-item-line{font-size:13px;color:#374151;padding:4px 0;border-bottom:.5px solid #f3f4f6;display:flex;justify-content:space-between}
.rwc-dj-item-line:last-child{border-bottom:none}
.rwc-dj-item-name{font-weight:500}
.rwc-dj-item-detail{font-size:12px;color:#9ca3af}
.rwc-dj-price{font-size:22px;font-weight:700;color:#f97316;margin:12px 0}
.rwc-dj-actions{display:flex;gap:10px;margin-bottom:16px}
.rwc-dj-btn-primary{flex:1;background:#f97316;color:#fff;border:none;border-radius:12px;padding:14px;font-size:15px;font-weight:600;cursor:pointer}
.rwc-dj-btn-secondary{flex:1;background:#fff;color:#f97316;border:1.5px solid #f97316;border-radius:12px;padding:14px;font-size:15px;font-weight:600;cursor:pointer}
.rwc-dj-nav{display:flex;justify-content:center;gap:6px}
.rwc-dj-dot{width:6px;height:6px;border-radius:50%;background:#d1d5db;cursor:pointer;border:none;padding:0;transition:background .2s}
.rwc-dj-dot.is-active{background:#f97316;width:18px;border-radius:3px}
@media (min-width:1024px){
.rwc-dj-overlay{align-items:center}
.rwc-dj-modal{border-radius:16px;max-width:480px;max-height:80vh;transform:scale(.95);opacity:0}
.rwc-dj-overlay.is-open .rwc-dj-modal{transform:scale(1);opacity:1}
}
.rwc-option__right{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:150px;flex-shrink:0}
.rwc-option__price{display:inline-flex;justify-content:flex-end;min-width:72px;text-align:right}
.rwc-mod-stepper{display:none;align-items:center;gap:4px;flex-shrink:0}
.rwc-mod-stepper.is-visible{display:inline-flex}
.rwc-mod-step{width:26px;height:26px;border:1.5px solid #ecd6be;background:#fff;border-radius:7px;font-size:15px;font-weight:700;cursor:pointer;line-height:1;color:#f97316;display:flex;align-items:center;justify-content:center;padding:0}
.rwc-mod-step:hover{background:#fff7ed}
.rwc-mod-qty{min-width:20px;text-align:center;font-size:13px;font-weight:700;color:#111827}
