/* AMELIAPOS_PRODUCT_DRAWER_LAYOUT_REBUILD_R20_5P
   Structural authority for the Product editor only.
   No business logic, auth, catalog data or Restaurant semantics are changed. */

#managementCatalog #productAdminForm.r205p-product-drawer{
  box-sizing:border-box!important;
  /* display is owned by the visibility contract below */
  flex-direction:column!important;
  position:fixed!important;
  top:14px!important;
  right:14px!important;
  bottom:14px!important;
  left:auto!important;
  width:min(1100px,calc(100vw - 28px))!important;
  min-width:0!important;
  max-width:1100px!important;
  height:auto!important;
  max-height:calc(100dvh - 28px)!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid #d9e2e9!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:-18px 20px 58px rgba(15,35,52,.20)!important;
  z-index:1205!important;
  isolation:isolate!important;
}

/* Header is a separate fixed-height flex item. */
#managementCatalog #productAdminForm.r205p-product-drawer > header:first-child{
  box-sizing:border-box!important;
  flex:0 0 auto!important;
  min-height:66px!important;
  width:100%!important;
  margin:0!important;
  padding:14px 16px 13px 20px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  position:relative!important;
  inset:auto!important;
  background:#fff!important;
  border:0!important;
  border-bottom:1px solid #e2e8ed!important;
  z-index:4!important;
}
#managementCatalog #productAdminForm.r205p-product-drawer > header:first-child > div{
  min-width:0!important;
}
#managementCatalog #productAdminForm.r205p-product-drawer > header:first-child span{
  display:block!important;
  margin:0 0 2px!important;
  font-size:10px!important;
  line-height:1.1!important;
  font-weight:800!important;
  letter-spacing:.08em!important;
}
#managementCatalog #productAdminForm.r205p-product-drawer > header:first-child h4{
  margin:0!important;
  font-size:20px!important;
  line-height:1.15!important;
}
#managementCatalog #productAdminForm.r205p-product-drawer > header:first-child button{
  flex:0 0 40px!important;
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  padding:0!important;
}

/* Only this node scrolls. This is the key fix for footer/body overlap. */
#managementCatalog #productAdminForm.r205p-product-drawer > .amelia-product-scroll{
  box-sizing:border-box!important;
  flex:1 1 auto!important;
  min-height:0!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:18px 20px 30px!important;
  display:block!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable!important;
  scroll-padding-top:16px!important;
  scroll-padding-bottom:30px!important;
  position:relative!important;
  inset:auto!important;
  background:#fff!important;
}

/* Everything inside the body must respect the same useful width. */
#managementCatalog #productAdminForm.r205p-product-drawer > .amelia-product-scroll > *,
#managementCatalog #productAdminForm.r205p-product-drawer .amelia-product-scroll > *,
#managementCatalog #productAdminForm.r205p-product-drawer .amelia-product-section-content > *,
#managementCatalog #productAdminForm.r205p-product-drawer .master-form-grid > *{
  box-sizing:border-box!important;
  min-width:0!important;
  max-width:100%!important;
}

/* Footer never overlays the scroll area. */
#managementCatalog #productAdminForm.r205p-product-drawer > .catalog-drawer-footer{
  box-sizing:border-box!important;
  flex:0 0 auto!important;
  width:100%!important;
  min-height:64px!important;
  margin:0!important;
  padding:10px 14px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  position:relative!important;
  inset:auto!important;
  bottom:auto!important;
  transform:none!important;
  background:#fff!important;
  border:0!important;
  border-top:1px solid #e1e8ed!important;
  box-shadow:0 -5px 16px rgba(15,35,52,.035)!important;
  z-index:5!important;
}
#managementCatalog #productAdminForm.r205p-product-drawer > .catalog-drawer-footer button{
  min-height:42px!important;
  width:auto!important;
  min-width:110px!important;
  margin:0!important;
}
#managementCatalog #productAdminForm.r205p-product-drawer > .catalog-drawer-footer button[type="submit"],
#managementCatalog #productAdminForm.r205p-product-drawer > .catalog-drawer-footer .primary{
  min-width:146px!important;
}

/* Commercial hero: stable two-column layout without squeezing. */
#managementCatalog #productAdminForm.r205p-product-drawer .product-editor-hero{
  box-sizing:border-box!important;
  width:100%!important;
  display:grid!important;
  grid-template-columns:158px minmax(0,1fr)!important;
  align-items:stretch!important;
  gap:12px!important;
  margin:0 0 12px!important;
  padding:0!important;
}
#managementCatalog #productAdminForm.r205p-product-drawer .product-thumb,
#managementCatalog #productAdminForm.r205p-product-drawer .product-editor-summary{
  box-sizing:border-box!important;
  min-width:0!important;
  width:100%!important;
  height:auto!important;
}
#managementCatalog #productAdminForm.r205p-product-drawer .product-editor-summary{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}
#managementCatalog #productAdminForm.r205p-product-drawer .product-finance-summary{
  box-sizing:border-box!important;
  width:100%!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
}
#managementCatalog #productAdminForm.r205p-product-drawer .product-finance-summary > *{
  min-width:0!important;
  overflow:hidden!important;
}

/* Ownership/context cards share exact horizontal bounds. */
#managementCatalog #productAdminForm.r205p-product-drawer .amelia-product-ownership,
#managementCatalog #productAdminForm.r205p-product-drawer .amelia-product-context{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:none!important;
  margin:0 0 12px!important;
}

/* Product accordion cards. */
#managementCatalog #productAdminForm.r205p-product-drawer details.amelia-product-section{
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:auto!important;
  max-height:none!important;
  margin:0 0 12px!important;
  padding:0!important;
  overflow:visible!important;
  border:1px solid #dbe4ea!important;
  border-radius:12px!important;
  outline:0!important;
  background:#fff!important;
  box-shadow:none!important;
}
#managementCatalog #productAdminForm.r205p-product-drawer details.amelia-product-section:focus,
#managementCatalog #productAdminForm.r205p-product-drawer details.amelia-product-section:focus-visible,
#managementCatalog #productAdminForm.r205p-product-drawer details.amelia-product-section:focus-within{
  outline:0!important;
  box-shadow:0 0 0 1px rgba(239,112,42,.08)!important;
}

/* Summary gets one deterministic grid. This fixes the title/state being
   thrown to opposite corners and the tiny state text under the caret. */
#managementCatalog #productAdminForm.r205p-product-drawer details.amelia-product-section > summary,
#managementCatalog #productAdminForm.r205p-product-drawer .r205p-section-summary{
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr) minmax(110px,210px)!important;
  grid-auto-flow:row!important;
  align-items:center!important;
  column-gap:12px!important;
  row-gap:2px!important;
  width:100%!important;
  min-width:0!important;
  min-height:64px!important;
  margin:0!important;
  padding:11px 14px!important;
  overflow:visible!important;
  list-style:none!important;
  cursor:pointer!important;
  background:#f8fafb!important;
  border:0!important;
  border-radius:11px!important;
}
#managementCatalog #productAdminForm.r205p-product-drawer details[open].amelia-product-section > summary{
  border-radius:11px 11px 0 0!important;
  border-bottom:1px solid #e3e9ee!important;
}
#managementCatalog #productAdminForm.r205p-product-drawer details.amelia-product-section > summary::-webkit-details-marker{
  display:none!important;
}

/* Force roles assigned by the repair JS. */
#managementCatalog #productAdminForm.r205p-product-drawer .r205p-section-caret{
  grid-column:1!important;
  grid-row:1!important;
  align-self:center!important;
  justify-self:start!important;
  display:grid!important;
  place-items:center!important;
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  margin:0!important;
  padding:0!important;
  border-radius:9px!important;
  background:#edf3f6!important;
  color:#244357!important;
  font-size:15px!important;
  line-height:1!important;
  overflow:hidden!important;
}
#managementCatalog #productAdminForm.r205p-product-drawer .r205p-section-title,
#managementCatalog #productAdminForm.r205p-product-drawer .amelia-product-section-title{
  grid-column:2!important;
  grid-row:1!important;
  min-width:0!important;
  width:auto!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  text-align:left!important;
  overflow:visible!important;
}
#managementCatalog #productAdminForm.r205p-product-drawer .r205p-section-title strong,
#managementCatalog #productAdminForm.r205p-product-drawer .amelia-product-section-title strong{
  display:block!important;
  width:100%!important;
  margin:0!important;
  font-size:12px!important;
  line-height:1.25!important;
  font-weight:800!important;
  color:#183043!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
#managementCatalog #productAdminForm.r205p-product-drawer .r205p-section-title small,
#managementCatalog #productAdminForm.r205p-product-drawer .amelia-product-section-title small{
  display:block!important;
  width:100%!important;
  margin:2px 0 0!important;
  font-size:9px!important;
  line-height:1.35!important;
  font-weight:400!important;
  color:#657887!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
#managementCatalog #productAdminForm.r205p-product-drawer .r205p-section-state,
#managementCatalog #productAdminForm.r205p-product-drawer .amelia-product-section-state{
  grid-column:3!important;
  grid-row:1!important;
  align-self:center!important;
  justify-self:end!important;
  min-width:0!important;
  max-width:210px!important;
  margin:0!important;
  padding:4px 8px!important;
  font-size:9px!important;
  line-height:1.25!important;
  font-weight:700!important;
  text-align:right!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  color:#617483!important;
  background:#f0f4f6!important;
  border-radius:999px!important;
}

/* Body of every accordion has independent, visible content height. */
#managementCatalog #productAdminForm.r205p-product-drawer .amelia-product-section-content{
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:14px!important;
  overflow:visible!important;
  position:relative!important;
  inset:auto!important;
  background:#fff!important;
}

/* Remove inherited absolute/translated positioning from section content. */
#managementCatalog #productAdminForm.r205p-product-drawer .amelia-product-section-content .master-form-grid,
#managementCatalog #productAdminForm.r205p-product-drawer .amelia-product-section-content .recipe-admin,
#managementCatalog #productAdminForm.r205p-product-drawer .amelia-product-section-content .branch-pricing-admin,
#managementCatalog #productAdminForm.r205p-product-drawer .amelia-product-section-content #productRecipeEditor,
#managementCatalog #productAdminForm.r205p-product-drawer .amelia-product-section-content #productBranchPricingPanel{
  position:relative!important;
  inset:auto!important;
  transform:none!important;
  float:none!important;
}

/* Fields never force horizontal overflow. */
#managementCatalog #productAdminForm.r205p-product-drawer .master-form-grid,
#managementCatalog #productAdminForm.r205p-product-drawer .amelia-product-fields{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
  align-items:start!important;
}
#managementCatalog #productAdminForm.r205p-product-drawer .master-form-grid .span-two,
#managementCatalog #productAdminForm.r205p-product-drawer .amelia-product-fields .span-two{
  grid-column:1 / -1!important;
}
#managementCatalog #productAdminForm.r205p-product-drawer label{
  min-width:0!important;
  max-width:100%!important;
}
#managementCatalog #productAdminForm.r205p-product-drawer input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
#managementCatalog #productAdminForm.r205p-product-drawer select,
#managementCatalog #productAdminForm.r205p-product-drawer textarea{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}
#managementCatalog #productAdminForm.r205p-product-drawer textarea{
  resize:vertical!important;
}

/* Legacy recipe/branch sections are explicitly allowed to occupy their
   natural height. This fixes Composición and Precios por sucursal being
   visually flattened/clipped by parent layout rules. */
#managementCatalog #productAdminForm.r205p-product-drawer #productRecipeEditor,
#managementCatalog #productAdminForm.r205p-product-drawer #productBranchPricingPanel,
#managementCatalog #productAdminForm.r205p-product-drawer .r205p-important-section{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  overflow:visible!important;
}
#managementCatalog #productAdminForm.r205p-product-drawer #productRecipeEditor > header,
#managementCatalog #productAdminForm.r205p-product-drawer #productBranchPricingPanel > header{
  box-sizing:border-box!important;
  width:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  min-width:0!important;
}
#managementCatalog #productAdminForm.r205p-product-drawer #productRecipeRows,
#managementCatalog #productAdminForm.r205p-product-drawer #productBranchPrices{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}
#managementCatalog #productAdminForm.r205p-product-drawer .recipe-admin-row,
#managementCatalog #productAdminForm.r205p-product-drawer .branch-price-row{
  box-sizing:border-box!important;
  max-width:100%!important;
  min-width:0!important;
}

/* Empty sections get a usable vertical footprint instead of a 1px/pill strip. */
#managementCatalog #productAdminForm.r205p-product-drawer #productRecipeRows:empty,
#managementCatalog #productAdminForm.r205p-product-drawer #productBranchPrices:empty{
  min-height:44px!important;
  border:1px dashed #d8e2e8!important;
  border-radius:10px!important;
  background:#fafcfd!important;
}

/* Remove black browser-style focus rectangles from accordion cards. */
#managementCatalog #productAdminForm.r205p-product-drawer summary:focus,
#managementCatalog #productAdminForm.r205p-product-drawer summary:focus-visible{
  outline:none!important;
  box-shadow:none!important;
}

/* Desktop <= 1180: keep margins, reduce padding/third summary column. */
@media (max-width:1180px) and (min-width:821px){
  #managementCatalog #productAdminForm.r205p-product-drawer{
    top:10px!important;
    right:10px!important;
    bottom:10px!important;
    width:calc(100vw - 20px)!important;
    max-width:none!important;
    max-height:calc(100dvh - 20px)!important;
  }
  #managementCatalog #productAdminForm.r205p-product-drawer > .amelia-product-scroll{
    padding:16px 18px 26px!important;
  }
  #managementCatalog #productAdminForm.r205p-product-drawer details.amelia-product-section > summary{
    grid-template-columns:34px minmax(0,1fr) minmax(90px,170px)!important;
  }
}

/* Tablet/mobile: full application sheet, one-column fields. */
@media (max-width:820px){
  #managementCatalog #productAdminForm.r205p-product-drawer{
    inset:0!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    max-height:100dvh!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  #managementCatalog #productAdminForm.r205p-product-drawer > .amelia-product-scroll{
    padding:12px 12px 22px!important;
  }
  #managementCatalog #productAdminForm.r205p-product-drawer .product-editor-hero{
    grid-template-columns:1fr!important;
  }
  #managementCatalog #productAdminForm.r205p-product-drawer .product-finance-summary{
    grid-template-columns:1fr 1fr!important;
  }
  #managementCatalog #productAdminForm.r205p-product-drawer .master-form-grid,
  #managementCatalog #productAdminForm.r205p-product-drawer .amelia-product-fields{
    grid-template-columns:1fr!important;
  }
  #managementCatalog #productAdminForm.r205p-product-drawer .master-form-grid .span-two,
  #managementCatalog #productAdminForm.r205p-product-drawer .amelia-product-fields .span-two{
    grid-column:auto!important;
  }
  #managementCatalog #productAdminForm.r205p-product-drawer details.amelia-product-section > summary{
    grid-template-columns:34px minmax(0,1fr)!important;
  }
  #managementCatalog #productAdminForm.r205p-product-drawer .r205p-section-state,
  #managementCatalog #productAdminForm.r205p-product-drawer .amelia-product-section-state{
    grid-column:2!important;
    grid-row:2!important;
    justify-self:start!important;
    max-width:100%!important;
    text-align:left!important;
  }
  #managementCatalog #productAdminForm.r205p-product-drawer > .catalog-drawer-footer{
    padding:9px 10px!important;
  }
}

/* AMELIAPOS_R20_8_5_3R6_PRODUCT_DRAWER_VISIBILITY_CONTRACT
   Visibility state is authoritative. Structural R20.5P rules must never
   override class="hidden". */
#managementCatalog #productAdminForm.r205p-product-drawer:not(.hidden){
  display:flex!important;
}
#managementCatalog #productAdminForm.r205p-product-drawer.hidden{
  display:none!important;
}

/* AMELIAPOS_R20_8_5_3R6FIX1_BINARY_SAFE_LIVE_QA_AND_SERVICE_REBIND
   Installer/live-QA fix only. No additional visual or business rule. */
