/* Helix Resto · ajustes de producto sobre design-v1.0.css.
   Cada regla está registrada en design/CHANGELOG.md (sección "Diferencias de implementación"). */

/* Controles del diseño implementados como links (el estado vive en la URL). */
a.btn, a.chip, a.ibtn, a.navb, a.tenant, .seg a, .bnav a, a.it, a.card { text-decoration: none; color: inherit }
.seg a { display: flex; align-items: center; gap: 7px; padding: 6px 12px; border-radius: 8px; font-size: 13px; font-weight: 550; color: var(--muted); transition: background .25s, color .25s, box-shadow .25s; white-space: nowrap; cursor: pointer }
.seg a:hover { color: var(--fg) }
.seg a[aria-pressed="true"] { background: var(--surface); color: var(--fg); box-shadow: 0 1px 3px rgba(0, 0, 0, .12) }
.seg.sm a { padding: 5px 10px; font-size: 12.5px }
a.chip.on { color: var(--bg) }
a.scrim { display: block; cursor: default }
form.inline { display: contents }
button.chip { cursor: pointer }

/* Rail y bottom-nav: los items también pueden ser links. */
@container app (max-width:699px) {
  .bnav a { flex: 1; display: flex; flex-direction: column; align-items: center; gap: 3px; padding: 7px 2px; border-radius: 16px; font-size: 10.5px; font-weight: 600; color: var(--muted2); transition: background .25s, color .25s; position: relative }
  .bnav a.on { background: var(--acc-soft); color: var(--acc-ink) }
}

/* Popover nativo del selector de negocio (reemplaza el estado `pop` del prototipo). */
.pop[popover] { position: fixed; inset: auto; margin: 0; left: 12px; top: 64px; width: 270px; color: var(--fg) }
.pop[popover]::backdrop { background: transparent }

/* Carta pública a pantalla completa (fuera del marco de teléfono). */
.carta-page { min-height: 100dvh; background: var(--pbg, #FBF8F3); color: #16130F; display: flex; justify-content: center }
.carta-page .scr { width: min(520px, 100%); min-height: 100dvh; display: flex; flex-direction: column; position: relative; background: var(--pbg, #FBF8F3) }
.carta-page .cm { overflow: visible; padding-top: 22px }
.carta-page .cmbar { position: fixed; left: max(10px, calc(50% - 250px)); right: max(10px, calc(50% - 250px)) }
.phone iframe { width: 100%; height: 100%; border: 0; display: block; border-radius: 30px; background: #FBF8F3 }

/* Impresión del cartel de mesa. */
@media print {
  body * { visibility: hidden !important }
  .tent-print, .tent-print * { visibility: visible !important }
  .tent-print { position: fixed; left: 0; top: 0; width: 105mm; border: none !important }
}
.carta-embed { height: 100vh; overflow: hidden; background: #FBF8F3 }
.carta-embed .scr { width: 100%; height: 100vh; overflow: hidden; background: var(--pbg, #FBF8F3); color: #16130F; display: flex; flex-direction: column; position: relative }

/* Los formularios de las islas usan `display:contents`: replicamos `.dbody>.search{flex:none}` del diseño. */
.dbody form > .search { flex: none }
