/*
 * Kitchen CORE — casca visual compartilhada do ambiente operacional.
 * Mantém Cardápio e Tarefas na mesma escala sem alterar seus fluxos internos.
 */

:root{
  --kc-operational-shell-width:min(var(--kc-content-max-width),96vw);
  --kc-operational-header-control-height:var(--kc-control-height-md);
  --kc-operational-nav-height:var(--kc-control-height-md);
  --kc-operational-secondary-nav-height:var(--kc-control-height-sm);
  --kc-operational-primary-nav-width:216px;
  --kc-operational-header-tray-width:920px;
  --kc-operational-header-tray-medium-width:720px;
  --kc-operational-header-tray-compact-width:520px;
}

.tasks-shell,
header .wrap.top,
.header-info,
.record-context-row{
  width:var(--kc-operational-shell-width);
}

.record-mobile-quickbar{display:none}

header .wrap.top,
.tasks-header__inner{
  min-height:54px;
  padding-block:var(--kc-space-2);
}

.title-brand,
.tasks-brand{
  display:flex;
  align-items:center;
  gap:var(--kc-space-5);
  min-width:0;
}

.home-logo,
.tasks-brand img{
  width:var(--kc-control-height-md);
  height:var(--kc-control-height-md);
  flex:0 0 var(--kc-control-height-md);
  border:1px solid var(--kc-color-border-strong);
  border-radius:var(--kc-radius-lg);
  background:var(--kc-color-surface-card);
  box-shadow:var(--kc-shadow-sm);
}

.brand-text,
.tasks-brand>span{
  display:grid;
  gap:var(--kc-space-1);
  min-width:0;
}

.brand-text strong,
.tasks-brand strong{
  font-size:var(--kc-font-size-5xl);
  font-weight:var(--kc-font-weight-bold);
  letter-spacing:-.02em;
  line-height:var(--kc-line-height-tight);
}

.brand-text small,
.tasks-brand small{
  margin:0;
  color:var(--kc-color-text-muted);
  font-size:var(--kc-font-size-sm);
  font-weight:var(--kc-font-weight-bold);
  line-height:var(--kc-line-height-heading);
}

.record-navigation,
.tasks-navigation,
.record-primary-nav,
.tasks-primary-nav,
.record-header-actions,
.tasks-secondary-nav{
  gap:var(--kc-space-2);
}

.record-navigation,
.tasks-navigation{
  position:relative;
  display:grid;
  grid-template-columns:var(--kc-operational-primary-nav-width) 1px minmax(0,1fr) auto;
  align-items:center;
  width:100%;
  min-width:0;
  height:50px;
  padding:var(--kc-space-1);
  box-sizing:border-box;
  border:1px solid var(--kc-color-border);
  border-radius:var(--kc-radius-xl);
  background:var(--kc-color-surface-section);
  box-shadow:var(--kc-shadow-xs);
}

.record-primary-nav,
.tasks-primary-nav{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  width:var(--kc-operational-primary-nav-width);
  min-width:0;
}

.record-primary-nav .top-action,
.tasks-primary-nav .kc-button{
  min-height:var(--kc-operational-nav-height);
  padding:0 var(--kc-space-4);
  border-radius:var(--kc-radius-control);
  font-size:var(--kc-font-size-md);
  font-weight:var(--kc-font-weight-bold);
}

.record-header-actions,
.tasks-secondary-nav{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  min-width:0;
}

.record-header-actions .top-action,
.tasks-secondary-nav .kc-button{
  min-height:var(--kc-operational-secondary-nav-height);
  padding:0 var(--kc-space-3);
  border-color:transparent;
  border-radius:var(--kc-radius-lg);
  font-size:var(--kc-font-size-md);
  font-weight:var(--kc-font-weight-bold);
  box-shadow:none;
}

.record-header-actions .record-header-icon-action{
  width:var(--kc-operational-secondary-nav-height);
  min-width:var(--kc-operational-secondary-nav-height);
  padding:0!important;
}

.record-header-actions .conference-toggle{
  border-color:var(--kc-color-primary-200);
  background:var(--kc-color-primary-50);
  color:var(--kc-color-primary-700);
}

.record-tools-menu,
.tasks-tools-menu{
  position:relative;
  margin:0;
}

.record-tools-menu summary,
.tasks-tools-menu summary{
  display:grid;
  width:var(--kc-control-height-sm);
  min-width:var(--kc-control-height-sm);
  height:var(--kc-control-height-sm);
  min-height:var(--kc-control-height-sm);
  padding:0;
  place-items:center;
  list-style:none;
  cursor:pointer;
}

.record-tools-menu summary::-webkit-details-marker,
.tasks-tools-menu summary::-webkit-details-marker{display:none}

.record-tools-popover,
.tasks-tools-popover{
  position:absolute;
  top:calc(100% + var(--kc-space-2));
  right:0;
  z-index:80;
  display:grid;
  width:210px;
  gap:var(--kc-space-1);
  margin:0;
  padding:var(--kc-space-2);
  border:1px solid var(--kc-color-border-strong);
  border-radius:var(--kc-radius-lg);
  background:var(--kc-color-surface-card);
  box-shadow:var(--kc-shadow-lg);
}

.record-tools-popover .top-action,
.tasks-tools-popover .kc-button{
  width:100%;
  min-height:var(--kc-control-height-sm);
  justify-content:flex-start;
  border-radius:var(--kc-radius-md);
  text-decoration:none;
}

.record-tools-popover__utilities{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:var(--kc-space-2);
  margin-top:var(--kc-space-1);
  padding-top:var(--kc-space-2);
  border-top:1px solid var(--kc-color-border);
}

.record-tools-popover .record-menu-icon-action{
  width:var(--kc-control-height-sm);
  min-width:var(--kc-control-height-sm);
  padding:0!important;
  justify-content:center;
}

.record-navigation .ui-icon,
.tasks-navigation .tasks-nav-icon{
  display:inline-grid;
  width:var(--kc-icon-size-lg);
  height:var(--kc-icon-size-lg);
  flex:0 0 var(--kc-icon-size-lg);
  place-items:center;
  border-radius:var(--kc-radius-pill);
}

.record-navigation .ui-icon svg,
.tasks-navigation .tasks-nav-icon svg{
  width:var(--kc-icon-size-sm);
  height:var(--kc-icon-size-sm);
}

.header-info,
.tasks-operational-info{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:var(--kc-space-3);
  padding:0 0 var(--kc-space-3);
}

.record-context-row{
  display:block;
  margin:0 auto;
  padding:0 0 var(--kc-space-2);
}

.record-context-row .header-info{
  width:100%;
  min-width:0;
  justify-self:stretch;
  padding:0;
}

.menu-print-modal>.kc-modal__header{
  position:static;
}

.tasks-operational-info{
  padding-bottom:var(--kc-space-3);
}

/*
 * Navegação estável entre Cardápio e Tarefas.
 *
 * As duas páginas têm quantidades diferentes de ações contextuais. Sem uma
 * bandeja reservada, essas ações empurravam Cardápio/Tarefas para outro ponto
 * da tela durante a troca de rota. A marca ocupa a primeira coluna e a mesma
 * área de navegação ocupa a segunda; dentro dela, os dois destinos principais
 * também têm largura fixa e idêntica.
 */
@media(min-width:721px){
  header .wrap.top>.record-header-stack{
    display:block!important;
  }

  header .wrap.top>.mobile-module-menu{
    display:none!important;
  }

  .tasks-header__inner>.tasks-navigation{
    display:grid!important;
  }
}

@media(min-width:1281px){
  header .wrap.top,
  .tasks-header__inner{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) var(--kc-operational-header-tray-width);
    align-items:center!important;
    gap:var(--kc-space-3)!important;
  }

  header .wrap.top>.record-header-stack,
  .tasks-header__inner>.tasks-navigation{
    width:var(--kc-operational-header-tray-width)!important;
    min-width:var(--kc-operational-header-tray-width)!important;
    max-width:var(--kc-operational-header-tray-width)!important;
    margin-left:0!important;
    justify-self:end;
  }

  .record-primary-nav .top-action,
  .tasks-primary-nav .kc-button{
    width:100%;
    min-width:0;
    justify-content:center;
    padding-inline:var(--kc-space-3)!important;
  }

  .tasks-tools-menu{display:none!important}
}

@media(min-width:1001px) and (max-width:1280px){
  header .wrap.top,
  .tasks-header__inner{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) var(--kc-operational-header-tray-medium-width)!important;
    align-items:center!important;
    gap:var(--kc-space-3)!important;
  }

  header .wrap.top>.record-header-stack,
  .tasks-header__inner>.tasks-navigation{
    width:var(--kc-operational-header-tray-medium-width)!important;
    min-width:var(--kc-operational-header-tray-medium-width)!important;
    max-width:var(--kc-operational-header-tray-medium-width)!important;
    margin-left:0!important;
    justify-self:end;
  }

  .record-primary-nav .top-action,
  .tasks-primary-nav .kc-button{
    width:100%;
    min-width:0;
    justify-content:center;
    padding-inline:var(--kc-space-2)!important;
  }

  .tasks-secondary-nav>[data-print-tasks],
  .tasks-secondary-nav>[data-open-task-history]{
    display:none!important;
  }

  .tasks-tools-menu{
    display:block!important;
  }
}

@media(min-width:721px) and (max-width:1000px){
  :root{
    --kc-operational-primary-nav-width:184px;
  }

  header .wrap.top,
  .tasks-header__inner{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) var(--kc-operational-header-tray-compact-width)!important;
    align-items:center!important;
    gap:var(--kc-space-2)!important;
  }

  header .wrap.top>.record-header-stack,
  .tasks-header__inner>.tasks-navigation{
    width:var(--kc-operational-header-tray-compact-width)!important;
    min-width:var(--kc-operational-header-tray-compact-width)!important;
    max-width:var(--kc-operational-header-tray-compact-width)!important;
    margin-left:0!important;
    justify-self:end;
  }

  .title-brand,
  .tasks-brand{gap:var(--kc-space-2)}
  .home-logo,
  .tasks-brand img{width:40px;height:40px;flex-basis:40px}
  .brand-text strong,
  .tasks-brand strong{
    font-size:var(--kc-font-size-xl)!important;
    white-space:nowrap;
  }
  .brand-text small,
  .tasks-brand small{
    font-size:var(--kc-font-size-2xs)!important;
    white-space:nowrap;
  }

  .record-primary-nav .top-action,
  .tasks-primary-nav .kc-button{
    height:var(--kc-operational-nav-height)!important;
    min-height:var(--kc-operational-nav-height)!important;
    padding-inline:var(--kc-space-2)!important;
  }

  /* O CSS legado de Tarefas escondia estes rótulos em parte da faixa de
     tablet. A navegação principal precisa conservar o mesmo formato das duas
     páginas para que Cardápio/Tarefas não mudem de tamanho durante a troca. */
  .tasks-primary-nav .kc-button>span:last-child{
    display:inline!important;
  }

  /* Em tablet, quatro acessos permanecem diretos. Ações menos frequentes
     ficam no menu sem disputar espaço ou reaparecer em dois lugares. */
  .tasks-navigation{
    grid-template-columns:var(--kc-operational-primary-nav-width) minmax(0,1fr) var(--kc-control-height-sm)!important;
  }

  .tasks-navigation-divider{display:none!important}

  .tasks-secondary-nav{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:var(--kc-space-1)!important;
    min-width:0;
    padding:0!important;
    border:0!important;
    background:transparent!important;
  }

  .tasks-secondary-nav .kc-button{
    width:100%;
    min-width:0!important;
    padding-inline:var(--kc-space-1)!important;
    overflow:hidden;
    font-size:var(--kc-font-size-xs)!important;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  .record-header-actions .conference-toggle{width:38px;min-width:38px!important;padding:0}
  .record-header-actions .conference-toggle [data-conference-label]{display:none}
  .record-header-actions .save-action span:last-child{display:none}
  .record-header-actions .save-action{width:38px;padding:0}

  .tasks-secondary-nav>[data-print-tasks],
  .tasks-secondary-nav>[data-open-task-history]{display:none!important}
  .tasks-tools-menu{display:block!important}
}

.header-info .field,
.tasks-operational-info .kc-field{
  display:grid;
  gap:var(--kc-space-1);
  min-width:0!important;
  margin:0;
}

.header-info label,
.tasks-operational-info .kc-field__label{
  display:flex;
  min-height:0;
  margin:0;
  align-items:flex-end;
  color:var(--kc-color-text-secondary);
  font-size:var(--kc-font-size-xs);
  font-weight:var(--kc-font-weight-bold);
  letter-spacing:.04em;
  line-height:var(--kc-line-height-heading);
  text-transform:uppercase;
}

.header-info input,
.header-info select{
  width:100%;
  height:var(--kc-operational-header-control-height)!important;
  min-height:var(--kc-operational-header-control-height);
  min-width:0;
  padding:var(--kc-space-2) var(--kc-space-3);
  border:1px solid var(--kc-color-border-strong);
  border-radius:var(--kc-radius-lg);
  background:var(--kc-color-surface-muted);
  color:var(--kc-color-text);
  font-family:var(--kc-font-family-sans);
  font-size:var(--kc-font-size-lg);
  font-weight:var(--kc-font-weight-semibold);
  line-height:var(--kc-line-height-body);
}

.record-date-selector__controls{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:var(--kc-space-2);
  min-width:0;
}

.record-date-selector__today{
  min-height:var(--kc-operational-header-control-height);
  height:var(--kc-operational-header-control-height);
  border-radius:var(--kc-radius-lg);
  padding-inline:var(--kc-space-4);
}

.record-date-state{
  justify-content:flex-end;
}

.record-date-state__summary{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  margin:-1px!important;
  padding:0!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
}

.tasks-operational-info .kc-input,
.tasks-operational-info .kc-select{
  width:100%;
  height:var(--kc-operational-header-control-height)!important;
  min-height:var(--kc-operational-header-control-height);
  min-width:0;
  padding:var(--kc-space-2) var(--kc-space-3);
  border:1px solid var(--kc-color-border-field);
  border-radius:var(--kc-radius-lg);
  background:var(--kc-color-surface-field);
  color:var(--kc-color-text);
  font-family:var(--kc-font-family-sans);
  font-size:var(--kc-font-size-lg);
  font-weight:var(--kc-font-weight-semibold);
  line-height:var(--kc-line-height-body);
}

@media(max-width:720px){
  :root{--kc-operational-shell-width:calc(100vw - (2 * var(--kc-content-padding-mobile)))}
  header .wrap.top{display:flex!important;grid-template-columns:none!important;flex-wrap:nowrap!important;gap:var(--kc-space-3)!important}
  header .wrap.top .title-brand{width:auto;flex:1 1 auto}
  header .wrap.top .mobile-module-menu{margin-left:auto}
  .home-logo,.tasks-brand img{width:38px;height:38px;flex-basis:38px;border-radius:var(--kc-radius-md)}
  .brand-text strong,.tasks-brand strong{font-size:var(--kc-font-size-4xl)}
  .brand-text small,.tasks-brand small{font-size:var(--kc-font-size-xs)}
  header .wrap.top,.tasks-header__inner{min-height:50px;padding-block:var(--kc-space-1)}
  .header-info,.tasks-operational-info{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:var(--kc-space-2)}
  .record-context-row{padding-bottom:var(--kc-space-2)}
  .header-info .field:last-child,.tasks-operational-info .kc-field:last-child{grid-column:auto}
  .header-info label,.tasks-operational-info .kc-field__label{font-size:var(--kc-font-size-2xs)}
  .header-info input,.header-info select,.tasks-operational-info .kc-input,.tasks-operational-info .kc-select{height:var(--kc-control-height-md)!important;min-height:var(--kc-control-height-md);padding-inline:var(--kc-space-2);font-size:var(--kc-font-size-md)}
  .record-date-selector__today{height:var(--kc-control-height-md);min-height:var(--kc-control-height-md);padding-inline:var(--kc-space-3)}
  .record-mobile-quickbar{
    width:var(--kc-operational-shell-width);
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:var(--kc-space-1);
    margin:0 auto;
    padding:0 0 var(--kc-space-2);
  }
  .record-mobile-quickbar__item{
    width:100%;
    min-width:0;
    min-height:var(--kc-control-height-md);
    padding:var(--kc-space-1);
    display:flex;
    align-items:center;
    justify-content:center;
    gap:var(--kc-space-1);
    border:1px solid var(--kc-color-border);
    border-radius:var(--kc-radius-lg);
    background:var(--kc-color-surface-card);
    color:var(--kc-color-text-secondary);
    box-shadow:var(--kc-shadow-xs);
    font-size:var(--kc-font-size-xs);
    font-weight:var(--kc-font-weight-bold);
    line-height:1;
    text-decoration:none;
  }
  .record-mobile-quickbar__item.is-active{
    border-color:var(--kc-color-primary-300);
    background:var(--kc-color-primary);
    color:#fff;
  }
  .record-mobile-quickbar__item .ui-icon{display:grid;width:18px;height:18px;flex:0 0 18px;place-items:center}
  .record-mobile-quickbar__item .ui-icon svg{width:17px;height:17px}
  .mobile-module-sheet .mobile-primary-label,
  .mobile-module-sheet .mobile-actions-label,
  .mobile-module-sheet .mobile-primary-nav,
  .mobile-module-sheet .mobile-card-action{display:none!important}
  .mobile-module-sheet .mobile-batch-production-action{display:flex!important}
  .mobile-module-sheet .mobile-secondary-label{margin-top:0;padding-top:0;border-top:0}
}

@media(max-width:430px){
  .record-mobile-quickbar__item{flex-direction:column;gap:2px;min-height:48px;font-size:10px}
}

/* Profundidade operacional: página, seção, lista e linha usam superfícies distintas. */
body{
  overflow-x:hidden;
  background:var(--kc-color-surface-page);
}

header{
  box-shadow:var(--kc-shadow-xs);
}

main>.card{
  border-color:var(--kc-color-border-strong);
  background:var(--kc-color-surface-section);
  box-shadow:var(--kc-shadow-sm);
}

.record-operational-filters{
  border-color:var(--kc-color-border-strong)!important;
  background:var(--kc-color-surface-card)!important;
  box-shadow:var(--kc-shadow-xs);
}

.table-wrap{
  border-color:var(--kc-color-border-strong)!important;
  background:var(--kc-color-surface-inset)!important;
  box-shadow:inset 0 1px 2px rgba(15,23,42,.04);
}

.table-wrap thead th{
  background:var(--kc-color-page-deep)!important;
}

@media(min-width:701px){
  .table-wrap tbody td{
    border-bottom:6px solid var(--kc-color-surface-inset)!important;
    background:var(--kc-color-surface-card);
  }
  .table-wrap tbody tr.change-row td{
    background:var(--kc-color-warning-50)!important;
  }
  .table-wrap tbody tr.not-produced-row td{
    background:var(--kc-color-surface-subtle)!important;
  }
}

/* Casca operacional unificada: quatro destinos permanecem na mesma posição
   e as ações contextuais ocupam apenas o espaço que realmente precisam. */
:root{
  --kc-operational-primary-nav-width:460px;
  --kc-operational-header-tray-width:1040px;
}

.record-primary-nav,
.tasks-primary-nav{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  width:var(--kc-operational-primary-nav-width)!important;
}

.record-primary-nav .kc-button,
.tasks-primary-nav .kc-button{
  width:100%;
  min-width:0;
  min-height:var(--kc-operational-nav-height);
  justify-content:center;
  padding-inline:var(--kc-space-3)!important;
  overflow:hidden;
  border-radius:var(--kc-radius-control);
  font-size:var(--kc-font-size-sm);
  font-weight:var(--kc-font-weight-bold);
  text-overflow:ellipsis;
  white-space:nowrap;
  text-decoration:none;
}

.record-primary-nav .ui-icon,
.tasks-primary-nav .tasks-nav-icon{
  background:var(--kc-color-primary-surface);
  color:var(--kc-color-primary);
}

.record-primary-nav .is-active,
.tasks-primary-nav .is-active{
  border-color:var(--kc-color-primary)!important;
  background:var(--kc-color-primary)!important;
  color:var(--kc-color-white)!important;
}

.record-primary-nav .is-active .ui-icon,
.tasks-primary-nav .is-active .tasks-nav-icon{
  background:color-mix(in srgb,var(--kc-color-white) 18%,transparent);
  color:var(--kc-color-white);
}

.record-navigation,
.tasks-navigation{
  grid-template-columns:var(--kc-operational-primary-nav-width) 1px minmax(0,1fr) auto!important;
}

.record-context-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:var(--kc-space-4);
  padding-bottom:var(--kc-space-3);
}

.record-context-row .header-info{
  grid-template-columns:minmax(330px,1.3fr) minmax(150px,.7fr) minmax(150px,.7fr)!important;
}

.record-context-row .record-date-state{
  width:auto;
  min-width:0;
  margin:0;
  padding:0;
}

.record-date-state__actions>.kc-button{
  min-height:var(--kc-control-height-md);
}

.operational-module-header{
  position:sticky;
  top:0;
  z-index:30;
  border-bottom:1px solid var(--kc-color-border);
  background:var(--kc-color-surface-panel);
  box-shadow:var(--kc-shadow-xs);
}

.operational-module-shell{
  display:grid;
  width:var(--kc-operational-shell-width);
  min-height:54px;
  margin:0 auto;
  padding-block:var(--kc-space-2);
  grid-template-columns:minmax(0,1fr) var(--kc-operational-header-tray-width);
  align-items:center;
  gap:var(--kc-space-3);
}

.operational-module-brand{
  display:flex;
  min-width:0;
  align-items:center;
  gap:var(--kc-space-3);
  color:var(--kc-color-text);
  text-decoration:none;
}

.operational-module-brand img{
  width:var(--kc-control-height-md);
  height:var(--kc-control-height-md);
  flex:0 0 var(--kc-control-height-md);
  border:1px solid var(--kc-color-border-strong);
  border-radius:var(--kc-radius-lg);
  background:var(--kc-color-surface-card);
  box-shadow:var(--kc-shadow-sm);
}

.operational-module-brand>span{display:grid;min-width:0;gap:var(--kc-space-1)}
.operational-module-brand strong{overflow:hidden;font-size:var(--kc-font-size-4xl);font-weight:var(--kc-font-weight-bold);line-height:1;text-overflow:ellipsis;white-space:nowrap}
.operational-module-brand small{color:var(--kc-color-text-muted);font-size:var(--kc-font-size-sm);font-weight:var(--kc-font-weight-bold)}
.operational-module-navigation{width:var(--kc-operational-header-tray-width)!important;justify-self:end}
.operational-module-navigation .record-header-actions{min-height:var(--kc-control-height-sm)}
.operational-module-navigation .record-header-actions .kc-button{min-height:var(--kc-control-height-sm);padding-inline:var(--kc-space-3);white-space:nowrap}
.operational-module-navigation .record-tools-popover .kc-button{justify-content:flex-start}
.operational-module-mobile-tools{display:none}

@media(min-width:1400px){
  header .wrap.top,
  .tasks-header__inner{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) var(--kc-operational-header-tray-width)!important;
    align-items:center!important;
    gap:var(--kc-space-3)!important;
  }

  header .wrap.top>.record-header-stack,
  .tasks-header__inner>.tasks-navigation{
    width:var(--kc-operational-header-tray-width)!important;
    min-width:var(--kc-operational-header-tray-width)!important;
    max-width:var(--kc-operational-header-tray-width)!important;
    margin-left:0!important;
    justify-self:end;
  }
}

@media(min-width:721px) and (max-width:1399px){
  header .wrap.top,
  .tasks-header__inner,
  .operational-module-shell{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    align-items:center!important;
    gap:var(--kc-space-2)!important;
  }

  header .wrap.top>.record-header-stack,
  .tasks-header__inner>.tasks-navigation,
  .operational-module-navigation{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
    justify-self:stretch;
  }

  .record-navigation,
  .tasks-navigation{
    grid-template-columns:minmax(0,1fr) 1px auto auto!important;
  }

  .record-primary-nav,
  .tasks-primary-nav{
    width:100%!important;
  }

  .title-brand,
  .tasks-brand,
  .operational-module-brand{min-height:42px}

  .brand-text strong,
  .tasks-brand strong,
  .operational-module-brand strong{font-size:var(--kc-font-size-xl)!important}

  .brand-text small,
  .tasks-brand small,
  .operational-module-brand small{font-size:var(--kc-font-size-xs)!important}

  .tasks-secondary-nav>[data-print-tasks],
  .tasks-secondary-nav>[data-open-task-history]{display:none!important}
  .tasks-tools-menu{display:block!important}
}

@media(min-width:721px) and (max-width:980px){
  .record-primary-nav .kc-button,
  .tasks-primary-nav .kc-button{padding-inline:var(--kc-space-2)!important;font-size:var(--kc-font-size-xs)}
  .record-context-row{grid-template-columns:1fr}
  .record-context-row .record-date-state{width:100%}
  .record-date-state__actions{width:100%;justify-content:flex-end}
}

@media(max-width:720px){
  .record-context-row{grid-template-columns:1fr;gap:var(--kc-space-2)}
  .record-context-row .header-info{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .record-context-row .header-info .field:first-child{grid-column:1/-1!important}
  .record-context-row .record-date-state{width:100%}
  .record-date-state__actions{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--kc-space-2)}
  .record-date-state__actions>.kc-button{width:100%;min-width:0;white-space:normal}
  .record-date-state__actions>.kc-button:only-child{grid-column:1/-1}

  .operational-module-shell{
    display:flex;
    width:var(--kc-operational-shell-width);
    min-height:52px;
    padding-block:var(--kc-space-1);
  }
  .operational-module-brand{flex:1 1 auto}
  .operational-module-brand img{width:38px;height:38px;flex-basis:38px;border-radius:var(--kc-radius-md)}
  .operational-module-brand strong{font-size:var(--kc-font-size-2xl)}
  .operational-module-brand small{font-size:var(--kc-font-size-xs)}
  .operational-module-navigation{display:none!important}
  .operational-module-mobile-tools{display:block;flex:0 0 auto}
  .operational-module-mobile-tools>summary{width:var(--kc-control-height-md);min-width:var(--kc-control-height-md);height:var(--kc-control-height-md);padding:0}
  .operational-module-mobile-tools .record-tools-popover{right:0;left:auto;min-width:190px}
  .operational-module-mobile-tools .record-tools-popover .kc-button{width:100%;justify-content:flex-start}
  .operational-module-header .record-mobile-quickbar{display:grid}
}

@media(max-width:430px){
  .operational-module-brand strong{font-size:var(--kc-font-size-xl)}
}

/* Listas extensas deixam o navegador adiar linhas fora da área visível. */
.table-wrap tbody tr{
  content-visibility:auto;
  contain-intrinsic-block-size:74px;
}

@media(max-width:700px){
  header{box-shadow:none}
  main>.card{box-shadow:var(--kc-shadow-xs)}
  .table-wrap tbody tr{
    contain-intrinsic-block-size:230px;
    border-color:var(--kc-color-border-strong)!important;
    background:var(--kc-color-surface-card)!important;
    box-shadow:var(--kc-shadow-xs);
  }
}

@media(any-pointer:coarse){
  .mobile-module-backdrop,
  .recipe-operation-viewer{
    backdrop-filter:none!important;
  }
}

/* Navegação operacional mobile: a casca permanece no mesmo lugar entre
   Cardápio e Tarefas; somente as duas ações contextuais da direita mudam. */
@media(max-width:720px){
  header .wrap.top,
  .tasks-header__inner{
    min-height:52px;
    align-items:center!important;
  }

  /* A casca de Tarefas usa componentes próprios, mas preserva exatamente o
     mesmo ritmo vertical do Cardápio para a navegação não "saltar". */
  .tasks-header__inner{
    min-height:54px;
  }

  .title-brand,
  .tasks-brand{
    gap:var(--kc-space-3);
  }

  .brand-text strong,
  .tasks-brand strong{
    font-size:var(--kc-font-size-3xl);
    line-height:1;
  }

  .brand-text small,
  .tasks-brand small{
    font-size:var(--kc-font-size-xs);
    line-height:1.15;
  }

  .tasks-primary-nav,
  .tasks-secondary-nav,
  .tasks-navigation-divider{
    display:none!important;
  }

  .tasks-navigation{
    display:flex!important;
    width:auto!important;
    min-width:0!important;
    height:auto!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    margin-left:auto;
  }

  .tasks-tools-menu{
    display:block!important;
  }

  .tasks-tools-menu summary{
    width:46px;
    min-width:46px;
    height:46px;
    min-height:46px;
    border:1px solid var(--kc-color-border-strong);
    border-radius:var(--kc-radius-lg);
    background:var(--kc-color-surface-card);
    color:var(--kc-color-text);
    box-shadow:none;
  }

  /* A data recebe uma linha inteira para que o texto nativo do navegador não
     invada Dia e Cardápio. Os dois campos curtos dividem a segunda linha. */
  .header-info,
  .tasks-operational-info{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:var(--kc-space-2)!important;
  }

  .header-info .field:first-child,
  .tasks-operational-info .kc-field:first-child{
    grid-column:1/-1!important;
  }

  .header-info .field:last-child,
  .tasks-operational-info .kc-field:last-child{
    grid-column:auto!important;
  }

  .tasks-operational-info{
    padding-bottom:var(--kc-space-2)!important;
  }

  .header-info input,
  .header-info select,
  .tasks-operational-info .kc-input,
  .tasks-operational-info .kc-select{
    height:var(--kc-control-height-md)!important;
    min-height:var(--kc-control-height-md)!important;
    min-width:0!important;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:var(--kc-font-size-md)!important;
  }

  .record-mobile-quickbar{
    grid-template-columns:repeat(4,minmax(0,1fr));
    align-items:stretch;
  }

  .tasks-mobile-quickbar{
    margin-top:var(--kc-space-2);
  }

  .record-mobile-quickbar__item{
    min-height:52px;
    flex-direction:column;
    gap:3px;
    padding:var(--kc-space-1) 2px;
    font-size:10px;
    line-height:1.05;
  }

  .record-mobile-quickbar__item .ui-icon{
    width:20px;
    height:20px;
    flex-basis:20px;
  }

  .record-mobile-quickbar__item .ui-icon svg{
    width:19px;
    height:19px;
  }

  .tasks-mobile-quickbar [data-mode].is-active{
    border-color:var(--kc-color-primary-300);
    background:var(--kc-color-primary-50);
    color:var(--kc-color-primary-700);
  }
}

/*
 * Contrato único do cabeçalho operacional.
 *
 * A primeira faixa contém sempre marca, quatro destinos e utilidades. A
 * segunda reserva a mesma coluna para o contexto da data e a mesma coluna
 * para as ações específicas de cada página. Assim, trocar entre Cardápio,
 * Tarefas, Reposição e KDS não desloca os elementos conhecidos.
 */
:root{
  --kc-operational-context-actions-width:620px;
  --kc-operational-context-min-height:68px;
}

header .wrap.top,
.tasks-header__inner,
.operational-module-shell{
  min-height:64px;
  padding-block:var(--kc-space-2);
}

.operational-module-brand{
  gap:var(--kc-space-5);
}

.operational-module-brand strong{
  font-size:var(--kc-font-size-5xl);
  letter-spacing:-.02em;
  line-height:var(--kc-line-height-tight);
}

.operational-module-brand small{
  font-size:var(--kc-font-size-sm);
  line-height:var(--kc-line-height-heading);
}

.tasks-header-actions{
  min-height:var(--kc-operational-secondary-nav-height);
}

.tasks-tools-menu{
  display:block!important;
}

@media(min-width:721px){
  .record-navigation,
  .tasks-navigation{
    grid-template-columns:var(--kc-operational-primary-nav-width) 1px minmax(0,1fr) auto!important;
  }

  .record-primary-nav,
  .tasks-primary-nav{
    width:var(--kc-operational-primary-nav-width)!important;
  }
}

.operational-context-row{
  display:grid;
  width:var(--kc-operational-shell-width);
  min-height:var(--kc-operational-context-min-height);
  margin:0 auto;
  padding:0 0 var(--kc-space-3);
  grid-template-columns:minmax(0,1fr) var(--kc-operational-context-actions-width);
  align-items:end;
  gap:var(--kc-space-4);
}

.record-context-row{
  grid-template-columns:minmax(0,1fr) var(--kc-operational-context-actions-width);
}

.operational-context-row .header-info,
.operational-context-row .tasks-operational-info{
  width:100%;
  min-width:0;
  margin:0;
  padding:0;
  grid-template-columns:minmax(330px,1.3fr) minmax(150px,.7fr) minmax(150px,.7fr)!important;
}

.operational-context-row .record-date-state{
  width:var(--kc-operational-context-actions-width);
  min-width:0;
  margin:0;
  padding:0;
}

.operational-context-actions,
.operational-context-row .record-date-state__actions{
  display:flex;
  width:100%;
  min-width:0;
  min-height:var(--kc-operational-context-min-height);
  align-items:flex-end;
  justify-content:flex-end;
  gap:var(--kc-space-2);
}

.operational-context-actions>.kc-button,
.operational-context-row .record-date-state__actions>.kc-button{
  min-height:var(--kc-operational-header-control-height);
  white-space:nowrap;
}

.tasks-context-row .tasks-secondary-nav{
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
}

.tasks-context-row .tasks-secondary-nav .kc-button{
  min-height:var(--kc-operational-header-control-height);
  padding-inline:var(--kc-space-3);
  border-color:var(--kc-color-border);
  border-radius:var(--kc-radius-lg);
  box-shadow:var(--kc-shadow-xs);
}

.tasks-context-row .tasks-secondary-nav .kc-button--primary{
  border-color:var(--kc-color-primary);
}

.operational-module-context .operational-context-summary{
  display:flex;
  width:100%;
  min-width:0;
  min-height:var(--kc-operational-context-min-height);
  margin:0;
  padding:var(--kc-space-2) var(--kc-space-4);
  align-items:center;
  justify-content:space-between;
  gap:var(--kc-space-3);
  border:1px solid var(--kc-color-border-strong);
  border-radius:var(--kc-radius-lg);
  background:var(--kc-color-surface-muted);
  color:var(--kc-color-text-secondary);
  box-shadow:none;
}

.operational-module-context .operational-context-summary strong{
  color:var(--kc-color-text);
  font-size:var(--kc-font-size-lg);
  font-weight:var(--kc-font-weight-bold);
}

.operational-module-context .operational-context-summary .muted,
.operational-module-context .operational-context-summary .count{
  color:var(--kc-color-text-muted);
  font-size:var(--kc-font-size-sm);
  font-weight:var(--kc-font-weight-semibold);
}

.operational-module-context .operational-context-actions{
  flex-wrap:wrap;
}

.operational-module-context .response-btn .badge{
  display:inline-flex;
  min-width:20px;
  min-height:20px;
  align-items:center;
  justify-content:center;
  padding-inline:var(--kc-space-1);
  border-radius:var(--kc-radius-pill);
}

@media(min-width:1400px){
  .operational-module-shell{
    grid-template-columns:minmax(0,1fr) var(--kc-operational-header-tray-width)!important;
  }

  .operational-module-navigation{
    width:var(--kc-operational-header-tray-width)!important;
    min-width:var(--kc-operational-header-tray-width)!important;
    max-width:var(--kc-operational-header-tray-width)!important;
  }
}

@media(min-width:981px) and (max-width:1399px){
  :root{
    --kc-operational-context-actions-width:min(520px,48vw);
  }

  .operational-context-row .header-info,
  .operational-context-row .tasks-operational-info{
    grid-template-columns:minmax(270px,1.2fr) minmax(130px,.7fr) minmax(130px,.7fr)!important;
  }

  .tasks-context-row .tasks-secondary-nav>[data-print-tasks],
  .tasks-context-row .tasks-secondary-nav>[data-open-task-history]{
    display:none!important;
  }
}

@media(min-width:721px) and (max-width:980px){
  .operational-context-row,
  .record-context-row{
    grid-template-columns:minmax(0,1fr)!important;
    gap:var(--kc-space-2);
  }

  .operational-context-row .record-date-state,
  .operational-context-actions{
    width:100%;
  }

  .operational-context-actions,
  .operational-context-row .record-date-state__actions{
    min-height:var(--kc-operational-header-control-height);
  }

  .operational-module-context .operational-context-summary{
    min-height:56px;
  }

  .tasks-context-row .tasks-secondary-nav{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .tasks-context-row .tasks-secondary-nav>[data-print-tasks],
  .tasks-context-row .tasks-secondary-nav>[data-open-task-history],
  .tasks-context-row .tasks-secondary-nav>.kc-theme-toggle{
    display:none!important;
  }
}

@media(min-width:721px) and (max-width:840px){
  .record-header-actions .record-header-today-action{
    display:none!important;
  }
}

@media(min-width:841px){
  .record-date-selector__controls{
    grid-template-columns:minmax(0,1fr);
  }

  .record-date-selector__today{
    display:none!important;
  }
}

@media(max-width:720px){
  :root{
    --kc-operational-context-min-height:0px;
  }

  .operational-context-row,
  .record-context-row{
    grid-template-columns:minmax(0,1fr)!important;
    gap:var(--kc-space-2);
    padding-bottom:var(--kc-space-2);
  }

  .operational-context-row .header-info,
  .operational-context-row .tasks-operational-info{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .tasks-context-row .tasks-operational-info{
    padding-bottom:0!important;
  }

  .operational-context-row .header-info .field:first-child,
  .operational-context-row .tasks-operational-info .kc-field:first-child{
    grid-column:1/-1!important;
  }

  .operational-context-row .record-date-state,
  .operational-context-actions{
    width:100%;
  }

  .tasks-context-row .tasks-secondary-nav{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .tasks-context-row .tasks-secondary-nav>[data-print-tasks],
  .tasks-context-row .tasks-secondary-nav>[data-open-task-history],
  .tasks-context-row .tasks-secondary-nav>.kc-theme-toggle{
    display:none!important;
  }

  .operational-module-context .operational-context-actions{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .operational-module-context .operational-context-actions>.kc-button{
    width:100%;
    min-width:0;
    white-space:normal;
  }

  .operational-module-context .operational-context-summary{
    min-height:var(--kc-control-height-md);
    padding:var(--kc-space-2) var(--kc-space-3);
  }
}

@media(max-width:430px){
  .brand-text strong,
  .tasks-brand strong{
    font-size:var(--kc-font-size-2xl);
  }

  .header-info input,
  .tasks-operational-info .kc-input{
    font-size:var(--kc-font-size-sm)!important;
  }
}

/*
 * O número da variação continua no DOM para integrações e diagnósticos, mas
 * deixa de competir com os controles operacionais. A faixa passa a ter apenas
 * Data e Dia visíveis, com ações de tamanho estável em qualquer resolução.
 */
.record-menu-metadata{
  display:none!important;
}

.operational-context-row .header-info,
.operational-context-row .tasks-operational-info{
  grid-template-columns:minmax(300px,1.45fr) minmax(140px,.55fr)!important;
}

.operational-context-row .record-date-state__actions{
  flex-wrap:wrap;
}

.operational-context-row .record-date-state__actions>.kc-button:not(.kc-button--icon){
  width:auto!important;
  min-width:150px;
  max-width:210px;
  padding-inline:var(--kc-space-4)!important;
  white-space:nowrap;
}

@media(min-width:981px) and (max-width:1399px){
  :root{
    --kc-operational-context-actions-width:min(540px,56vw);
  }

  .operational-context-row .header-info,
  .operational-context-row .tasks-operational-info{
    grid-template-columns:minmax(240px,1.45fr) minmax(120px,.55fr)!important;
  }
}

@media(min-width:721px) and (max-width:980px){
  .operational-context-row .record-date-state__actions{
    justify-content:flex-end;
  }
}

@media(max-width:720px){
  .operational-context-row .header-info,
  .operational-context-row .tasks-operational-info{
    grid-template-columns:minmax(0,1.55fr) minmax(120px,.45fr)!important;
  }

  .operational-context-row .header-info .field:first-child,
  .operational-context-row .tasks-operational-info .kc-field:first-child{
    grid-column:auto!important;
  }

  .operational-context-row .record-date-state__actions{
    display:grid!important;
    width:100%;
    max-width:368px;
    margin-left:auto;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    justify-content:end!important;
    gap:var(--kc-space-2);
  }

  .operational-context-row .record-date-state__actions>.kc-button:not(.kc-button--icon){
    width:100%!important;
    min-width:0;
    max-width:none;
    min-height:var(--kc-operational-header-control-height);
    padding-inline:var(--kc-space-3)!important;
    font-size:var(--kc-font-size-xs);
    white-space:nowrap;
  }

  .operational-context-row .record-date-state__actions>.kc-button:only-child{
    grid-column:auto!important;
  }
}

@media(max-width:520px){
  .operational-context-row .header-info,
  .operational-context-row .tasks-operational-info{
    grid-template-columns:minmax(0,1fr)!important;
  }
}

/*
 * Contexto no cabeçalho e ações autoexplicativas.
 * Em telas largas Data e Dia usam a área livre da navegação. Em tablets o
 * mesmo bloco volta para a linha inferior para preservar o tamanho dos campos.
 * Ações ocasionais ficam agrupadas no menu com ícone e rótulo completos.
 */
.record-date-selector__menu{
  display:none!important;
}

.record-tools-popover{
  width:280px;
  max-height:min(76dvh,620px);
  overflow:auto;
  overscroll-behavior:contain;
}

.record-tools-popover .record-tools-action,
.record-tools-popover>.icon-action{
  display:flex;
  width:100%;
  min-width:0;
  min-height:40px;
  align-items:center;
  justify-content:flex-start;
  gap:var(--kc-space-2);
  padding-inline:var(--kc-space-3)!important;
  text-align:left;
  white-space:normal;
}

.record-tools-popover .record-tools-action[hidden]{
  display:none!important;
}

.record-tools-popover .record-tools-action .ui-icon,
.record-tools-popover>.icon-action .ui-icon{
  width:22px;
  height:22px;
  flex:0 0 22px;
}

.record-tools-popover__divider{
  height:1px;
  margin:var(--kc-space-1) var(--kc-space-2);
  background:var(--kc-color-border);
}

.record-tools-popover__tail{
  display:contents;
}

.record-tools-popover .kc-theme-toggle>svg{
  width:18px;
  height:18px;
  flex:0 0 18px;
}

@media(min-width:1001px){
  .record-header-actions{
    display:block;
  }

  .record-header-actions>.header-info{
    display:grid;
    width:100%;
    grid-template-columns:minmax(220px,1.45fr) minmax(120px,.55fr)!important;
    gap:var(--kc-space-2)!important;
    padding:0!important;
  }

  .record-header-actions>.header-info .field{
    display:grid;
    min-width:0!important;
    grid-template-rows:10px 32px;
    gap:2px;
  }

  .record-header-actions>.header-info label{
    min-height:0;
    margin:0;
    color:var(--kc-color-text-muted);
    font-size:9px;
    line-height:1;
  }

  .record-header-actions>.header-info input{
    height:32px!important;
    min-height:32px!important;
    padding:0 var(--kc-space-3)!important;
    border-radius:var(--kc-radius-md);
    font-size:var(--kc-font-size-sm)!important;
  }

  .record-header-actions>.header-info .record-date-selector__controls{
    display:block;
  }

  .operational-context-row.record-context-row{
    padding-bottom:0;
  }

  .operational-context-row.record-context-row:has(#btnUsarCopiaLocalData:not([hidden]),#btnUsarCopiaOnlineData:not([hidden]),#btnReabrirRegistroData:not([hidden])){
    padding-bottom:var(--kc-space-2);
  }
}

@media(max-width:720px){
  .record-date-selector__controls{
    grid-template-columns:minmax(0,1fr) 42px 42px!important;
  }

  .record-date-selector__menu{
    display:inline-grid!important;
    width:42px!important;
    min-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0!important;
    place-items:center;
  }

  #recordDateState:not(:has(#btnUsarCopiaLocalData:not([hidden]),#btnUsarCopiaOnlineData:not([hidden]),#btnReabrirRegistroData:not([hidden]))){
    display:none!important;
  }

  .mobile-module-sheet .record-production-prep{
    display:flex!important;
  }

  .record-mobile-quickbar{
    width:var(--kc-operational-shell-width);
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:var(--kc-space-1);
  }

  .record-mobile-quickbar__item{
    width:auto;
    min-height:48px;
    flex-direction:column;
    gap:2px;
    padding:4px 2px;
    font-size:10px;
    line-height:1;
  }

  .record-mobile-quickbar__item>span:last-child{
    display:inline;
  }
}

/* Impressão é uma ação frequente: fica direta sem retirar os nomes do menu. */
.record-date-selector__print{
  display:none!important;
}

.record-plan-shortcut,
.record-print-shortcut{
  display:inline-flex;
  min-width:38px!important;
  height:38px;
  min-height:38px!important;
  align-items:center;
  justify-content:center;
  gap:var(--kc-space-2);
  padding:0 var(--kc-space-3)!important;
  border-color:transparent;
  white-space:nowrap;
}

.record-plan-shortcut .ui-icon,
.record-print-shortcut .ui-icon{
  width:20px;
  height:20px;
  flex:0 0 20px;
}

@media(min-width:721px){
  .record-navigation{
    grid-template-columns:var(--kc-operational-primary-nav-width) 1px minmax(0,1fr) auto auto auto!important;
  }
}

@media(min-width:1001px){
  .record-header-actions>.header-info{
    grid-template-columns:minmax(190px,1.3fr) minmax(110px,.55fr)!important;
  }
}

@media(min-width:721px) and (max-width:1280px){
  .record-plan-shortcut,
  .record-print-shortcut{
    width:38px;
    padding:0!important;
  }

  .record-plan-shortcut__label,
  .record-print-shortcut__label{
    display:none;
  }
}

@media(max-width:720px){
  .record-plan-shortcut{
    display:none!important;
  }

  .record-date-selector__controls{
    grid-template-columns:minmax(0,1fr) 42px 42px!important;
  }

  .record-date-selector__print{
    display:inline-grid!important;
    width:42px!important;
    min-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0!important;
    place-items:center;
  }

  .record-date-selector__print .ui-icon,
  .record-date-selector__print svg{
    width:19px;
    height:19px;
  }
}

/*
 * Cabeçalho operacional compacto do Cardápio.
 *
 * As ações continuam ligadas às mesmas funções e estados do Registro Diário,
 * mas ganham atalhos por ícone na área livre da navegação. Em telas pequenas,
 * a marca e os metadados redundantes deixam a faixa fixa para que o cardápio
 * apareça mais cedo, sem remover os controles do fluxo.
 */
.record-header-actions{
  gap:var(--kc-space-1)!important;
}

.record-header-actions .record-header-context-action{
  display:inline-grid;
  width:34px;
  min-width:34px!important;
  height:34px;
  min-height:34px!important;
  padding:0!important;
  place-items:center;
  border-color:transparent;
}

.record-header-actions .record-header-context-action[hidden]{
  display:none!important;
}

.record-header-actions .record-header-context-action.kc-button--primary{
  border-color:var(--kc-color-primary);
  box-shadow:var(--kc-shadow-xs);
}

@media(min-width:721px){
  .operational-context-row.record-context-row{
    min-height:0;
    padding-bottom:var(--kc-space-2);
    grid-template-columns:minmax(0,1fr)!important;
  }

  .operational-context-row.record-context-row .header-info{
    grid-template-columns:minmax(300px,1.65fr) minmax(140px,.55fr)!important;
  }

  .operational-context-row .record-date-state{
    display:none;
    width:100%;
  }

  .operational-context-row .record-date-state:has(#btnUsarCopiaLocalData:not([hidden]),#btnUsarCopiaOnlineData:not([hidden]),#btnReabrirRegistroData:not([hidden])){
    display:flex;
  }

  .operational-context-row .record-date-state__actions>.record-revert-action,
  .operational-context-row .record-date-state__actions>.record-team-review-action,
  .operational-context-row .record-date-state__actions>.record-production-prep,
  .operational-context-row .record-date-state__actions>.record-planning-load,
  .operational-context-row .record-date-state__actions>.mobile-module-menu{
    display:none!important;
  }
}

@media(max-width:720px){
  header .wrap.top{
    display:none!important;
  }

  .operational-context-row.record-context-row{
    gap:var(--kc-space-1);
    padding:var(--kc-space-2) 0 var(--kc-space-1);
  }

  .operational-context-row.record-context-row .header-info{
    grid-template-columns:minmax(0,1fr)!important;
    gap:0!important;
    padding:0!important;
  }

  .operational-context-row .record-day-metadata{
    display:none!important;
  }

  .operational-context-row .record-date-selector>label{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    margin:-1px!important;
    padding:0!important;
    overflow:hidden!important;
    clip:rect(0 0 0 0)!important;
    clip-path:inset(50%)!important;
    white-space:nowrap!important;
  }

  .record-date-selector__controls{
    grid-template-columns:minmax(0,1fr) 42px;
    gap:var(--kc-space-1);
  }

  .operational-context-row .record-date-selector input{
    height:42px!important;
    min-height:42px!important;
    padding-inline:var(--kc-space-3)!important;
    font-size:16px!important;
  }

  .record-date-selector__today{
    display:grid;
    width:42px;
    min-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0!important;
    place-items:center;
  }

  .record-date-selector__today>span:last-child{
    display:none;
  }

  .operational-context-row .record-date-state{
    display:block;
    width:100%;
  }

  .operational-context-row .record-date-state__actions{
    display:flex!important;
    width:100%;
    max-width:none;
    min-height:42px;
    margin:0;
    align-items:center;
    justify-content:flex-end!important;
    gap:var(--kc-space-1);
  }

  #recordDateState .record-date-state__actions>.record-action-icon-button,
  #recordDateState .record-date-state__actions>.mobile-module-menu{
    display:inline-grid;
    width:42px!important;
    min-width:42px!important;
    max-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0!important;
    place-items:center;
  }

  #recordDateState .record-date-state__actions>.record-action-icon-button[hidden]{
    display:none!important;
  }

  #recordDateState .record-date-state__actions>.record-action-icon-button .record-action-label{
    display:none;
  }

  #recordDateState .record-date-state__actions>.record-planning-load{
    display:none!important;
  }

  #recordDateState .record-date-state__actions>#btnUsarCopiaLocalData,
  #recordDateState .record-date-state__actions>#btnUsarCopiaOnlineData,
  #recordDateState .record-date-state__actions>#btnReabrirRegistroData{
    width:auto!important;
    min-width:0;
    max-width:none;
    min-height:42px;
    padding-inline:var(--kc-space-3)!important;
    white-space:nowrap;
  }

  .record-mobile-quickbar{
    grid-template-columns:repeat(4,42px)!important;
    justify-content:center;
    gap:var(--kc-space-2);
    padding-bottom:var(--kc-space-1);
  }

  .record-mobile-quickbar__item{
    width:42px;
    min-height:42px;
    padding:0;
    border-radius:var(--kc-radius-md);
  }

  .record-mobile-quickbar__item>span:last-child{
    display:none;
  }

  .record-mobile-quickbar__item .ui-icon,
  .record-mobile-quickbar__item .ui-icon svg{
    width:19px;
    height:19px;
  }

  .mobile-module-sheet .mobile-card-action{
    display:flex!important;
  }

  .mobile-module-sheet .mobile-card-action[hidden]{
    display:none!important;
  }

  .mobile-module-sheet .record-production-prep{
    display:none!important;
  }
}

@media(max-width:520px){
  .record-operational-filters{
    gap:var(--kc-space-2)!important;
    padding:var(--kc-space-2)!important;
  }

  .record-operational-filters .field>label{
    font-size:var(--kc-font-size-2xs)!important;
  }

  .record-operational-filters input,
  .record-operational-filters .record-station-trigger{
    min-height:42px!important;
  }
}

/* Precedência final do cabeçalho móvel após as regras legadas do módulo. */
@media(max-width:720px){
  .record-date-selector__controls{
    grid-template-columns:minmax(0,1fr) 42px!important;
  }

  .record-date-selector__menu{
    display:inline-grid!important;
    width:42px!important;
    min-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0!important;
    place-items:center;
  }

  #recordDateState:not(:has(#btnUsarCopiaLocalData:not([hidden]),#btnUsarCopiaOnlineData:not([hidden]),#btnReabrirRegistroData:not([hidden]))){
    display:none!important;
  }

  .mobile-module-sheet .record-production-prep{
    display:flex!important;
  }

  .mobile-module-sheet .record-production-prep[hidden]{
    display:none!important;
  }

  .record-mobile-quickbar{
    width:var(--kc-operational-shell-width);
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    justify-content:stretch;
    gap:var(--kc-space-1);
  }

  .record-mobile-quickbar__item{
    width:auto;
    min-height:48px;
    flex-direction:column;
    gap:2px;
    padding:4px 2px;
    font-size:10px;
    line-height:1;
  }

  .record-mobile-quickbar__item>span:last-child{
    display:inline;
  }
}

/* Mantém Data, impressão e menu na mesma linha após as regras legadas. */
@media(max-width:720px){
  .record-date-selector__controls{
    grid-template-columns:minmax(0,1fr) 42px 42px!important;
  }
}

/*
 * Acabamento do cabeçalho operacional.
 * A barra mantém uma única régua de altura e ritmo entre navegação, contexto
 * da data e utilidades, sem alterar a ordem nem os eventos dos controles.
 */
@media(min-width:1001px){
  header .wrap.top{
    min-height:68px;
    padding-block:var(--kc-space-2);
  }

  .record-navigation{
    height:56px;
    min-height:56px;
    padding:5px;
    column-gap:var(--kc-space-2);
  }

  .record-primary-nav{
    gap:var(--kc-space-1);
  }

  .record-primary-nav .kc-button{
    min-height:44px;
  }

  .record-header-actions{
    align-self:stretch;
  }

  .record-header-actions>.header-info{
    height:100%;
    align-items:end;
    gap:var(--kc-space-2)!important;
  }

  .record-header-actions>.header-info .field{
    grid-template-rows:10px 34px;
    align-content:center;
    gap:2px;
  }

  .record-header-actions>.header-info label{
    letter-spacing:.04em;
  }

  .record-header-actions>.header-info input{
    height:34px!important;
    min-height:34px!important;
  }

  .record-plan-shortcut,
  .record-print-shortcut,
  .record-tools-menu>summary{
    height:40px;
    min-height:40px!important;
    align-self:center;
  }

  .record-tools-menu>summary{
    width:40px;
    min-width:40px!important;
  }
}

@media(min-width:721px) and (max-width:1000px){
  .operational-context-row.record-context-row{
    padding-top:var(--kc-space-2);
  }

  .operational-context-row.record-context-row .header-info{
    align-items:end;
    gap:var(--kc-space-2)!important;
  }
}

/*
 * Data compacta no cabeçalho.
 * Os nomes continuam no DOM para tecnologia assistiva, mas deixam de criar
 * uma linha visual. Data e dia passam a ocupar somente o conteúdo real.
 */
.record-context-label{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  margin:-1px!important;
  padding:0!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
}

#dataHeader,
#tasksOperationalDate,
#kdsOperationalDate{
  background:var(--kc-color-primary-surface)!important;
  background:color-mix(in srgb,var(--kc-color-surface-raised) 58%,var(--kc-color-primary-surface))!important;
  border-color:var(--kc-color-primary-surface-border)!important;
  color:var(--kc-color-text)!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--kc-color-primary-surface-border) 32%,transparent);
}

.record-date-selector,
.record-day-metadata,
.tasks-operational-info .kc-field:has(#tasksOperationalDate),
.tasks-operational-info .kc-field:has(#tasksOperationalWeekday){
  width:auto!important;
  min-width:0!important;
}

.record-date-selector__controls{
  width:max-content;
  max-width:100%;
}

.tasks-context-row .tasks-operational-info{
  width:max-content!important;
  max-width:100%;
  grid-template-columns:178px 96px!important;
  justify-self:start;
}

.tasks-context-row .tasks-operational-info .kc-field:first-child{
  grid-column:auto!important;
}

@media(min-width:1001px){
  .record-header-actions{
    width:max-content;
    justify-self:end;
  }

  .record-header-actions>.header-info{
    width:max-content!important;
    grid-template-columns:178px 96px!important;
  }

  .record-header-actions>.header-info .field{
    grid-template-rows:34px!important;
    align-content:center;
  }
}

@media(min-width:721px) and (max-width:1000px){
  .operational-context-row.record-context-row .header-info,
  .tasks-context-row .tasks-operational-info{
    width:max-content!important;
    grid-template-columns:178px 96px!important;
    justify-self:start;
  }

  .operational-context-row.record-context-row .header-info .field:first-child,
  .tasks-context-row .tasks-operational-info .kc-field:first-child{
    grid-column:auto!important;
  }
}

@media(max-width:720px){
  .operational-context-row.record-context-row .header-info{
    width:max-content!important;
    max-width:100%;
    justify-self:start;
  }

  .record-date-selector__controls{
    grid-template-columns:178px 42px 42px!important;
  }
}

/*
 * Proporção dos controles de contexto.
 * Data e Dia compartilham altura, raio, tipografia e borda com Imprimir e o
 * menu de opções. A data mantém uma superfície própria por ser interativa.
 */
#dataHeader,
#diaSemanaHeader,
#tasksOperationalDate,
#tasksOperationalWeekday,
#kdsOperationalDate,
#kdsOperationalWeekday{
  border:1px solid var(--kc-color-border-field)!important;
  border-radius:var(--kc-radius-lg)!important;
  color:var(--kc-color-text)!important;
  font-size:var(--kc-font-size-md)!important;
  font-weight:var(--kc-font-weight-bold)!important;
  line-height:1!important;
}

#diaSemanaHeader,
#tasksOperationalWeekday,
#kdsOperationalWeekday{
  width:96px!important;
  background:var(--kc-color-surface-field)!important;
  box-shadow:none!important;
}

#dataHeader:hover,
#tasksOperationalDate:hover,
#kdsOperationalDate:hover{
  background:color-mix(in srgb,var(--kc-color-surface-raised) 42%,var(--kc-color-primary-surface))!important;
  border-color:var(--kc-color-primary)!important;
}

#dataHeader:focus-visible,
#tasksOperationalDate:focus-visible,
#kdsOperationalDate:focus-visible{
  border-color:var(--kc-color-primary)!important;
  outline:0!important;
  box-shadow:var(--kc-shadow-focus)!important;
}

@media(min-width:721px){
  #dataHeader,
  #diaSemanaHeader,
  #tasksOperationalDate,
  #tasksOperationalWeekday,
  #kdsOperationalDate,
  #kdsOperationalWeekday{
    height:44px!important;
    min-height:44px!important;
    padding:0 var(--kc-space-3)!important;
  }

  .record-header-actions{
    align-self:center;
    justify-self:start;
  }

  .record-header-actions>.header-info{
    height:44px;
    align-items:center;
    grid-template-columns:max-content max-content!important;
  }

  .record-header-actions>.header-info .field{
    height:44px;
    grid-template-rows:44px!important;
    align-content:center;
  }

  .record-date-selector__controls{
    height:44px;
  }

  .record-print-shortcut,
  .record-tools-menu>summary{
    height:44px;
    min-height:44px!important;
  }

  .record-tools-menu>summary{
    width:44px;
    min-width:44px!important;
  }
}

@media(min-width:721px) and (max-width:1000px){
  .operational-context-row.record-context-row .header-info,
  .tasks-context-row .tasks-operational-info{
    grid-template-columns:max-content max-content!important;
  }
}

@media(max-width:720px){
  #dataHeader,
  #diaSemanaHeader,
  #tasksOperationalDate,
  #tasksOperationalWeekday,
  #kdsOperationalDate,
  #kdsOperationalWeekday{
    height:42px!important;
    min-height:42px!important;
    padding:0 var(--kc-space-3)!important;
  }
}

/*
 * Contrato final compartilhado das quatro páginas do Registro Diário.
 * Este bloco fica por último para neutralizar dimensões legadas sem alterar
 * IDs, eventos ou a ordem de tabulação dos módulos.
 */
.operational-date-input,
.operational-weekday-input{
  height:44px!important;
  min-height:44px!important;
  padding:0 var(--kc-space-3)!important;
  border:1px solid var(--kc-color-border-field)!important;
  border-radius:var(--kc-radius-lg)!important;
  background:var(--kc-color-surface-field)!important;
  color:var(--kc-color-text)!important;
  font:inherit!important;
  font-size:var(--kc-font-size-md)!important;
  font-weight:var(--kc-font-weight-bold)!important;
  line-height:1!important;
  box-sizing:border-box;
}

.operational-date-input{
  width:178px!important;
  background:color-mix(in srgb,var(--kc-color-surface-raised) 58%,var(--kc-color-primary-surface))!important;
  border-color:var(--kc-color-primary-surface-border)!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--kc-color-primary-surface-border) 32%,transparent);
  color-scheme:light dark;
}

.operational-weekday-input{width:96px!important}

.operational-date-input:hover{
  background:color-mix(in srgb,var(--kc-color-surface-raised) 42%,var(--kc-color-primary-surface))!important;
  border-color:var(--kc-color-primary)!important;
}

.operational-date-input:focus-visible{
  outline:0!important;
  border-color:var(--kc-color-primary)!important;
  box-shadow:var(--kc-shadow-focus)!important;
}

.record-header-actions,
.tasks-header-actions{
  display:flex!important;
  width:max-content!important;
  min-width:0;
  align-items:center!important;
  justify-content:flex-start!important;
  align-self:center!important;
  gap:var(--kc-space-2)!important;
}

.record-header-actions:empty,
.tasks-header-actions:empty{display:none!important}

.record-header-actions>:is(.header-info,.tasks-operational-info,.operational-module-info){
  display:grid!important;
  width:max-content!important;
  height:44px!important;
  padding:0!important;
  grid-template-columns:max-content max-content!important;
  align-items:center!important;
  gap:var(--kc-space-2)!important;
}

.record-header-actions>:is(.header-info,.tasks-operational-info,.operational-module-info)>:is(.field,.kc-field){
  display:block!important;
  width:max-content!important;
  height:44px!important;
  min-width:0!important;
}

.record-date-selector__controls{
  display:grid!important;
  width:max-content!important;
  height:44px!important;
  grid-template-columns:178px!important;
  align-items:center;
  gap:var(--kc-space-1);
}

.record-plan-shortcut,
.record-print-shortcut,
.record-tools-menu>summary{
  height:44px!important;
  min-height:44px!important;
  border-radius:var(--kc-radius-lg)!important;
}

.record-tools-menu>summary{
  width:44px!important;
  min-width:44px!important;
}

.record-tools-popover,
.tasks-tools-popover{
  width:min(292px,calc(100vw - 24px))!important;
  gap:var(--kc-space-1)!important;
  padding:var(--kc-space-2)!important;
  border:1px solid var(--kc-color-border-strong)!important;
  border-radius:var(--kc-radius-xl)!important;
  background:var(--kc-color-surface-raised)!important;
  color:var(--kc-color-text)!important;
  box-shadow:var(--kc-shadow-lg)!important;
}

.record-tools-popover .operational-tools-action,
.tasks-tools-popover .operational-tools-action{
  display:flex!important;
  width:100%!important;
  min-width:0!important;
  min-height:42px!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:var(--kc-space-2)!important;
  padding:0 var(--kc-space-3)!important;
  border-color:transparent!important;
  background:transparent!important;
  color:var(--kc-color-text)!important;
  text-align:left;
  text-decoration:none;
  white-space:normal;
}

.record-tools-popover .operational-tools-action:is(:hover,:focus-visible),
.tasks-tools-popover .operational-tools-action:is(:hover,:focus-visible){
  border-color:var(--kc-color-primary-surface-border)!important;
  background:var(--kc-color-primary-surface)!important;
  color:var(--kc-color-primary-surface-text)!important;
}

.operational-tools-divider{
  height:1px;
  margin:var(--kc-space-1) var(--kc-space-2);
  background:var(--kc-color-border);
}

.record-tools-popover .kc-theme-toggle svg,
.tasks-tools-popover .kc-theme-toggle svg{width:18px;height:18px;flex:0 0 18px}

.record-menu-metadata,
.tasks-context-row .tasks-secondary-nav{display:none!important}

.readonly-warning{
  display:inline-flex;
  width:max-content;
  align-items:center;
  padding:var(--kc-space-1) var(--kc-space-2);
  border:1px solid var(--kc-color-warning-surface-border);
  border-radius:var(--kc-radius-pill);
  background:var(--kc-color-warning-surface);
  color:var(--kc-color-warning-surface-text);
  font-size:var(--kc-font-size-xs);
  font-weight:var(--kc-font-weight-bold);
}

.operational-readonly-date .operational-page-context{
  border-color:var(--kc-color-warning-surface-border)!important;
}

@media(min-width:1001px){
  .record-navigation{
    grid-template-columns:var(--kc-operational-primary-nav-width) 1px minmax(0,1fr) auto auto auto!important;
  }

  .tasks-navigation{
    grid-template-columns:var(--kc-operational-primary-nav-width) 1px minmax(0,1fr) auto auto!important;
  }

  .operational-date-context-row.is-context-relocated,
  .tasks-context-row.is-context-relocated{display:none!important}
}

@media(min-width:721px) and (max-width:1000px){
  .operational-date-context-row,
  .tasks-context-row{
    min-height:0!important;
    padding:var(--kc-space-2) 0!important;
    grid-template-columns:max-content!important;
    align-items:center!important;
  }

  .operational-date-context-row>:is(.header-info,.tasks-operational-info),
  .tasks-context-row>:is(.header-info,.tasks-operational-info){
    grid-template-columns:max-content max-content!important;
  }
}

@media(max-width:720px){
  body[data-kc-module="registro-cardapio-tarefas"] .tasks-header__inner,
  body:is([data-kc-module="registro-cardapio-reposicao"],[data-kc-module="registro-cardapio-kds"]) .operational-module-shell{
    display:none!important;
  }

  body[data-kc-module^="registro-cardapio"]>header{position:static!important}

  .operational-date-context-row,
  .tasks-context-row{
    min-height:0!important;
    padding:var(--kc-space-2) 0 var(--kc-space-1)!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:0!important;
  }

  .operational-date-context-row>:is(.header-info,.tasks-operational-info),
  .tasks-context-row>:is(.header-info,.tasks-operational-info){
    width:100%!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:0!important;
  }

  .operational-date-context-row .record-day-metadata,
  .tasks-context-row .kc-field:has(.operational-weekday-input),
  .tasks-context-row .kc-field:has(#tasksOperationalWeekday){display:none!important}

  .operational-date-context-row .record-date-selector,
  .tasks-context-row .record-date-selector{width:100%!important}

  .record-date-selector__controls{
    width:100%!important;
    height:42px!important;
    grid-template-columns:minmax(0,1fr) 42px 42px!important;
  }

  .operational-date-input,
  .operational-weekday-input{
    height:42px!important;
    min-height:42px!important;
  }

  .operational-date-input{width:100%!important;font-size:16px!important}

  .record-date-selector__print,
  .record-date-selector__menu{
    display:inline-grid!important;
    width:42px!important;
    min-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0!important;
    place-items:center;
  }

  .operational-date-tools{position:relative}
  .operational-date-tools>.record-tools-popover{right:0;left:auto}

  .record-mobile-quickbar{
    display:grid!important;
    width:var(--kc-operational-shell-width)!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:var(--kc-space-1)!important;
    padding:var(--kc-space-1) 0 var(--kc-space-2)!important;
  }

  .record-mobile-quickbar__item{
    width:auto!important;
    min-width:0!important;
    min-height:48px!important;
    padding:4px 2px!important;
    flex-direction:column!important;
    gap:2px!important;
    font-size:10px!important;
  }

  .record-mobile-quickbar__item>span:last-child{display:inline!important}
}
