/* Ajuste visual de alta de OT y POS Clean Master.
   Mantiene los datos esenciales en una sola fila y libera espacio moviendo Almacén a la cabecera. */

.ot-header-warehouse,
.pos-header-warehouse{
  width:240px;
  min-width:220px;
  text-align:left;
}
.ot-header-warehouse .form-group,
.pos-header-warehouse .form-group{margin:0;}
.ot-header-warehouse .form-label,
.pos-header-warehouse .form-label{
  margin-bottom:4px;
  font-size:10px;
  font-weight:800;
  color:var(--text-muted);
  text-transform:uppercase;
  letter-spacing:.04em;
}
.ot-header-warehouse .form-select,
.pos-header-warehouse .form-select{min-height:40px;}

.ot-create-page-controls{
  align-items:flex-end;
  gap:12px;
}
.pos-create-page-head{
  grid-template-columns:auto minmax(0,1fr) minmax(220px,250px) auto;
  align-items:center;
}
.pos-header-warehouse{justify-self:end;}
.pos-create-page-status{justify-self:end;}

/* Los Field originales se conservan como anclas del build histórico, pero
   Almacén ya se opera desde la cabecera y Condición no se muestra en POS. */
.ot-setup-grid>.form-group:has(.ot-setup-warehouse-select){display:none!important;}
.ot-setup-grid.is-pos>.form-group:has(.ot-pos-condition-select){display:none!important;}

/* Una sola fila siempre. Cliente y Nota general reciben prioridad de ancho.
   Los campos operativos pueden comprimirse; sólo si la pantalla ya no alcanza
   aparece desplazamiento horizontal, nunca una segunda fila. */
.ot-setup-grid,
.ot-setup-grid.is-pos{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:flex-end!important;
  gap:8px!important;
  width:100%;
  max-width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  scrollbar-width:thin;
  scrollbar-gutter:stable;
  padding-bottom:2px;
}
.ot-setup-grid>.form-group,
.ot-setup-grid.is-pos>.form-group{
  flex:1 1 110px;
  min-width:100px;
  margin:0;
}
.ot-setup-grid>.form-group:first-child,
.ot-setup-grid.is-pos>.form-group:first-child{
  flex:2.25 1 250px;
  min-width:230px;
}
.ot-setup-grid>.form-group:last-child,
.ot-setup-grid.is-pos>.form-group:last-child{
  flex:2.05 1 240px;
  min-width:220px;
}
.ot-setup-grid .form-control,
.ot-setup-grid .form-select,
.ot-setup-grid .async-search-control{width:100%;min-width:0;}

@media(max-width:1100px){
  .ot-header-warehouse,.pos-header-warehouse{width:210px;min-width:190px;}
  .pos-create-page-head{grid-template-columns:auto minmax(0,1fr) minmax(190px,210px);}
  .pos-create-page-status{grid-column:3;text-align:right;}
}

@media(max-width:900px){
  .ot-create-page-head,.pos-create-page-head{grid-template-columns:1fr;}
  .ot-create-page-head>.btn{justify-self:start;}
  .ot-create-page-head>div:nth-child(2),
  .ot-create-page-controls,
  .pos-header-warehouse,
  .pos-create-page-status{grid-column:1;width:100%;min-width:0;justify-self:stretch;}
  .ot-create-page-controls{justify-content:flex-start;flex-wrap:wrap;}
  .ot-header-warehouse{width:min(100%,320px);min-width:220px;}
  .pos-header-warehouse{max-width:320px;}
  .pos-create-page-status{text-align:left;}
  .ot-setup-grid,
  .ot-setup-grid.is-pos{display:flex!important;flex-wrap:nowrap!important;}
  .ot-setup-grid>.form-group:first-child,
  .ot-setup-grid.is-pos>.form-group:first-child{flex-basis:250px;min-width:230px;}
  .ot-setup-grid>.form-group:last-child,
  .ot-setup-grid.is-pos>.form-group:last-child{flex-basis:240px;min-width:220px;}
}
