.menu-order-dialog {
  width: min(92vw, 480px);
  max-height: 90vh;
  padding: clamp(1.4rem, 4vw, 2rem);
  border: 1px solid rgba(107,56,47,.2);
  border-radius: 24px;
  background: #fff4f9;
  color: #6b382f;
  box-shadow: 0 24px 70px rgba(80,38,49,.24);
}
.menu-order-dialog::backdrop { background: rgba(65,32,40,.52); }
.menu-order-dialog-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; margin-bottom: 1.5rem; }
.menu-order-eyebrow { margin: 0 0 .35rem; color: #8e5260; font: 600 .7rem/1.3 var(--sans); letter-spacing: .12em; text-transform: uppercase; }
.menu-order-dialog h2 { margin: 0; color: #6b382f; font-size: clamp(1.65rem, 5vw, 2.3rem); line-height: 1.1; }
.menu-order-close { flex: 0 0 auto; border: 0; background: transparent; color: #6b382f; font-size: 2rem; line-height: 1; cursor: pointer; }
.menu-order-dialog form, .menu-order-dialog form > div { display: grid; gap: .55rem; }
.menu-order-dialog form { gap: .85rem; }
.menu-order-dialog [hidden] { display: none !important; }
.menu-order-dialog label { font: 600 .88rem/1.3 var(--sans); }
.menu-order-dialog select, .menu-order-dialog input {
  width: 100%;
  min-height: 48px;
  padding: .7rem .85rem;
  border: 1px solid rgba(107,56,47,.3);
  border-radius: 12px;
  background: #fff;
  color: #6b382f;
  font: 400 1rem/1.3 var(--sans);
}
.menu-order-dialog select:focus-visible, .menu-order-dialog input:focus-visible { outline: 2px solid #8e5260; outline-offset: 2px; }
.menu-order-send { margin-top: .5rem; padding: .95rem 1rem; border: 0; border-radius: 999px; background: #8e5260; color: #6b382f; font: 600 .9rem/1.3 var(--sans); cursor: pointer; }
.menu-order-send:hover { background: #eec8d9; }

#pedidos.orders-section {
  position: relative;
  background: linear-gradient(160deg, #fff4f9 0%, #fff4f9 56%, #fff8fb 100%);
  padding-block: clamp(3.8rem, 7vw, 7rem);
  color: #6b382f;
  overflow: clip;
}
#pedidos .orders-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 2rem;
  max-width: 1100px;
  margin: 0 auto clamp(1.7rem,3vw,2.6rem);
}
#pedidos .orders-heading .label {
  color: #8e5260;
  margin-bottom: .65rem;
}
#pedidos .orders-heading h2 {
  font-family: var(--serif);
  color: #6b382f;
  font-size: clamp(2.8rem, 5vw, 4.5rem);
  font-weight: 500;
  line-height: 1.05;
  margin-bottom: .8rem;
}
#pedidos .orders-heading p:not(.label) {
  max-width: 520px;
  color: #8e5260;
  font-size: .94rem;
  line-height: 1.65;
}
#pedidos .orders-continue {
  flex-shrink: 0;
  color: #8e5260;
  font-size: .85rem;
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 4px;
  padding: .35rem 0;
}
#pedidos .orders-layout {
  display: grid;
  grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr);
  gap: clamp(1rem,2vw,1.5rem);
  align-items: start;
  max-width: 1100px;
  margin-inline: auto;
}
#pedidos .orders-basket,
#pedidos .orders-form {
  min-width: 0;
  border: 1px solid #eec8d9;
  border-radius: 26px;
  padding: clamp(1.35rem,2.5vw,2.2rem);
  background: #fff;
  box-shadow: 0 15px 42px rgba(97,48,61,.075);
}
#pedidos .orders-card-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: .8rem;
  margin-bottom: 1.4rem;
}
#pedidos .orders-card-heading h3 {
  font-family: var(--serif);
  color: #6b382f;
  font-size: clamp(1.65rem,2.6vw,2.3rem);
  font-weight: 600;
  line-height: 1.1;
}
#pedidos .orders-count,
#pedidos .orders-tag {
  padding: .4rem .75rem;
  color: #8e5260;
  background: #fff4f9;
  border-radius: 999px;
  font-size: .73rem;
  font-weight: 800;
}
#pedidos .orders-empty {
  border: 1px dashed #eec8d9;
  border-radius: 16px;
  padding: 1.65rem 1.3rem;
  background: #fff4f9;
  color: #8e5260;
  font-size: .87rem;
  line-height: 1.65;
}
#pedidos .orders-items {
  list-style: none;
  margin: 0;
  padding: 0;
}
#pedidos .orders-item {
  display: flex;
  justify-content: space-between;
  align-items: start;
  gap: 1rem;
  padding: 1rem 0;
  border-bottom: 1px solid #eec8d9;
}
#pedidos .orders-item-details {
  min-width: 0;
  display: grid;
  gap: .35rem;
}
#pedidos .orders-item-name {
  color: #6b382f;
  font-size: .9rem;
  font-weight: 700;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
#pedidos .orders-item-price {
  color: #8e5260;
  font-size: .85rem;
  font-weight: 700;
  white-space: nowrap;
}
#pedidos .orders-item-controls {
  display: flex;
  flex: none;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: .4rem;
}
#pedidos .orders-qty-button {
  border: 1px solid #eec8d9;
  border-radius: 10px;
  background: #fff4f9;
  color: #6b382f;
  height: 32px;
  width: 32px;
  font-size: 1.15rem;
  line-height: 1;
  font-weight: 700;
}
#pedidos .orders-qty-button:hover {background:#fff4f9;}
#pedidos .orders-item-quantity {
  min-width: 24px;
  text-align: center;
  color: #6b382f;
  font-size: .88rem;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}
#pedidos .orders-remove {
  color: #8e5260;
  font-size: .72rem;
  text-decoration: underline;
  text-underline-offset: 3px;
  padding: .32rem;
}
#pedidos .orders-summary {
  margin-top: 1.25rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  color: #6b382f;
  font-size: .95rem;
  font-weight: 700;
}
#pedidos .orders-summary strong {
  font-size: clamp(1.1rem,2.2vw,1.45rem);
  color: #8e5260;
  font-variant-numeric: tabular-nums;
}
#pedidos .orders-pending-note,
#pedidos .orders-subnote {
  font-size: .77rem;
  line-height: 1.55;
  color: #8e5260;
  margin-top: .75rem;
}
#pedidos .orders-pending-note {color:#8e5260;}
#pedidos .orders-fields {
  display: grid;
  gap: 1rem;
}
#pedidos .orders-field {
  display: grid;
  gap: .4rem;
  min-width: 0;
}
#pedidos .orders-field-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .9rem;
}
#pedidos .orders-field label,
#pedidos .orders-delivery legend {
  font-size: .82rem;
  color: #6b382f;
  font-weight: 750;
  line-height: 1.4;
}
#pedidos .orders-field label span:not(.orders-optional),
#pedidos .orders-delivery legend span {color:#8e5260;}
#pedidos .orders-optional {
  color: #8e5260;
  font-weight: 500;
}
#pedidos .orders-field input,
#pedidos .orders-field select,
#pedidos .orders-field textarea,
#pedidos .orders-message-wrap textarea {
  width: 100%;
  min-width: 0;
  min-height: 46px;
  padding: .78rem .9rem;
  background: #fff4f9;
  color: #6b382f;
  border: 1px solid #eec8d9;
  border-radius: 12px;
  font: 500 .89rem/1.45 var(--sans);
  outline: none;
}
#pedidos .orders-field textarea,
#pedidos .orders-message-wrap textarea {
  resize: vertical;
  min-height: 76px;
}
#pedidos .orders-field input:focus,
#pedidos .orders-field select:focus,
#pedidos .orders-field textarea:focus,
#pedidos .orders-message-wrap textarea:focus {
  border-color: #8e5260;
  box-shadow: 0 0 0 3px rgba(180,81,128,.12);
}
#pedidos .orders-delivery {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: .7rem;
  border: 0;
  padding: 0;
  margin: 0;
  min-width: 0;
}
#pedidos .orders-delivery legend {
  margin-bottom: .55rem;
}
#pedidos .orders-radio {
  display: flex;
  align-items: center;
  gap: .55rem;
  cursor: pointer;
  padding: .68rem 1rem;
  border: 1px solid #eec8d9;
  border-radius: 12px;
  background: #fff4f9;
  font-size: .82rem;
  color: #6b382f;
}
#pedidos .orders-radio:has(input:checked) {
  border-color: #8e5260;
  background: #fff4f9;
  color: #6b382f;
  font-weight: 700;
}
#pedidos .orders-radio input {
  accent-color: #8e5260;
}
#pedidos .orders-submit {
  display: block;
  width: 100%;
  border-radius: 100px;
  margin-top: 1.5rem;
  background: #8e5260;
  color: #fff;
  font-size: .86rem;
  font-weight: 800;
  padding: 1rem 1.2rem;
  transition: background .2s,transform .2s;
}
#pedidos .orders-submit:not(:disabled):hover {
  background: #6b382f;
  transform: translateY(-1px);
}
#pedidos .orders-submit:disabled {
  opacity: .55;
  cursor: not-allowed;
}
#pedidos .orders-status {
  padding: .95rem 1rem;
  border-radius: 12px;
  background: #fff4f9;
  color: #6b382f;
  line-height: 1.55;
  font-size: .84rem;
  margin-top: .8rem;
}
#pedidos .orders-message-wrap {
  display: grid;
  gap: .6rem;
  margin-top: .9rem;
}
#pedidos .orders-message-wrap label {
  color: #6b382f;
  font-size: .82rem;
  font-weight: 800;
}
#pedidos .orders-message-wrap textarea {
  min-height: 190px;
  white-space: pre-wrap;
}
#pedidos .orders-message-actions {
  display: flex;
  gap: .75rem;
  flex-wrap: wrap;
}
#pedidos .orders-copy-again,
#pedidos .orders-message-actions a {
  border: 1px solid #8e5260;
  color: #6b382f;
  padding: .6rem .85rem;
  border-radius: 99px;
  background: #fff4f9;
  font-weight: 800;
  font-size: .76rem;
}
#pedidos .orders-message-actions a {
  background: #8e5260;
  color: #fff;
  border-color: #8e5260;
}
#pedidos .orders-disclaimer {
  color: #8e5260;
  font-size: .73rem;
  line-height: 1.6;
  margin-top: 1rem;
}
#pedidos [hidden], .orders-floating[hidden], #orders-toast[hidden] { display:none !important; }
.orders-floating {
  position: fixed;
  z-index: 510;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .8rem;
  max-width: calc(100vw - 30px);
  padding: .85rem 1.2rem;
  border: 1px solid rgba(255,255,255,.75);
  border-radius: 99px;
  background: #8e5260;
  color: #fff;
  box-shadow: 0 14px 30px rgba(113,41,72,.22);
  font-size: .8rem;
  font-weight: 700;
  white-space: nowrap;
}
.orders-floating-icon {font-size:1.15rem;}
.orders-floating strong {font-variant-numeric:tabular-nums;}
.orders-floating-action {
  border-radius: 99px;
  padding: .32rem .65rem;
  background: rgba(255,255,255,.17);
  font-weight: 800;
}
body.has-cart-items #float-cta {display: none !important;}
#orders-toast {
  position: fixed;
  bottom: 85px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 515;
  max-width: min(92vw, 580px);
  padding: .8rem 1rem;
  border-radius: 13px;
  background: #fff;
  box-shadow: 0 10px 35px rgba(85,37,56,.2);
  border: 1px solid #eec8d9;
  color: #6b382f;
  text-align: center;
  font-size: .8rem;
  line-height: 1.4;
}
#pedidos button:focus-visible,
#pedidos a:focus-visible,
.orders-floating:focus-visible {
  outline: 3px solid #8e5260;
  outline-offset: 3px;
}
@media(max-width:800px) {
  #pedidos .orders-layout {grid-template-columns:1fr;max-width:620px;}
  #pedidos .orders-heading {max-width:620px;}
}
@media(max-width:600px) {
  #pedidos.orders-section {padding-block:3.5rem;}
  #pedidos .orders-heading {flex-direction:column;align-items:start;gap:.6rem;}
  #pedidos .orders-heading h2 {font-size:clamp(2.6rem,11vw,3.7rem);}
  #pedidos .orders-basket,#pedidos .orders-form {padding:1.2rem;border-radius:20px;}
  #pedidos .orders-field-row {grid-template-columns:1fr 1fr;gap:.55rem;}
  #pedidos .orders-item {flex-direction:column;gap:.65rem;}
  #pedidos .orders-item-controls {justify-content:start;}
  .orders-floating {bottom:15px;width:calc(100vw - 32px);gap:.6rem;justify-content:space-between;font-size:.72rem;padding:.78rem 1rem;}
  .orders-floating-action {padding:.3rem .4rem;}
  #orders-toast {bottom:78px;width:calc(100vw - 32px);}
}


body.orders-in-view .orders-floating {display:none !important;}

.menu-product-options[hidden] { display:none !important; }
.menu-order-dialog { margin: auto; overflow-y:auto; }
.menu-order-send, #pedidos .orders-submit, .orders-floating { background:#8e5260; color:#fff; }
.menu-order-help { font-size:.8rem; line-height:1.5; }
#pedidos.orders-section { background:#ffe1f1; }
#pedidos input, #pedidos textarea { user-select:text; }
#pedidos .orders-field input, #pedidos .orders-field textarea, #pedidos .orders-field select { font-family:var(--sans); }
#pedidos .orders-field-row { align-items:start; }
#pedidos .orders-field { align-content:start; }
#pedidos .orders-field small { font-size:.74rem; line-height:1.5; color:#8e5260; }
@media(max-width:600px) {
 #pedidos .orders-field input, #pedidos .orders-field textarea, #pedidos .orders-field select { font-size:16px; }
}
/* Selección de varios productos sin salir del catálogo. */
.menu-order-dialog { width:min(94vw,700px); max-height:90svh; padding:clamp(1.2rem,3vw,2rem); }
.menu-order-dialog .menu-order-products { display:grid; gap:0; max-height:46svh; overflow-y:auto; overscroll-behavior:contain; padding-right:.35rem; }
.menu-order-dialog .menu-order-product { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.9rem 0; border-bottom:1px solid #eec8d9; }
.menu-order-product-label { display:grid; gap:.35rem; min-width:0; flex:1; }
.menu-order-product-label strong { font-size:.9rem; line-height:1.4; font-weight:600; }
.menu-order-product-label span { font-size:.78rem; color:#8e5260; }
.menu-order-dialog .menu-order-product-controls { display:flex; align-items:center; flex:none; gap:.35rem; }
.menu-order-dialog .menu-order-product input { width:3.4rem; min-height:42px; padding:.45rem .2rem; text-align:center; font-variant-numeric:tabular-nums; font-size:16px; appearance:textfield; -moz-appearance:textfield; }
.menu-order-product input::-webkit-inner-spin-button { appearance:none; margin:0; }
.menu-order-step { width:36px; height:42px; border:1px solid #e4a6c6; border-radius:10px; color:#8e5260; background:#fff4f9; font-size:1.2rem; }
.menu-order-view-bag { text-align:center; color:#8e5260; font-size:.85rem; font-weight:700; padding:.5rem; text-decoration:underline; text-underline-offset:3px; }
#menu-order-price-note { color:#6b382f; font-size:.86rem; font-weight:600; }
#pedidos .orders-review { margin-top:1.5rem; border-top:1px solid #eec8d9; padding-top:1rem; }
#pedidos .orders-review summary { cursor:pointer; font-size:.85rem; color:#8e5260; font-weight:600; }
#pedidos .orders-review pre { white-space:pre-wrap; overflow-wrap:anywhere; font:400 .82rem/1.6 var(--sans); color:#6b382f; background:#fff4f9; padding:1rem; margin-top:1rem; border-radius:12px; user-select:text; }
@media(max-width:480px) {
 .menu-order-dialog .menu-order-product { gap:.6rem; }
 .menu-order-product-label strong { font-size:.8rem; }
 .menu-order-dialog .menu-order-product input { width:2.6rem; }
 .menu-order-step { width:32px; }
}

/* Ajustes da paleta Rosana. */
.menu-order-dialog { background:#fff8fb; }
.menu-order-send, #pedidos .orders-submit, .orders-floating { background:#8e5260; color:#fff; }
#pedidos.orders-section { background:#ffe1f1; }
#pedidos .orders-basket, #pedidos .orders-form { background:#fffafc; }
