/* V379 — Design System compartido del wizard administrativo de Paquetes
   Extracción conservadora desde V376/V378. Sin cambios visuales ni funcionales.
   Responsabilidad: tokens y primitivas que ya son compartidas por Estadía y Precio. */

:root{
  --package-ui-control-height:46px;
  --package-ui-radius-sm:10px;
  --package-ui-radius:12px;
  --package-ui-radius-lg:18px;
  --package-ui-gap:14px;
  --package-ui-section-gap:18px;
  --package-ui-control-shadow:0 1px 2px rgba(15,23,42,.025);
  --package-ui-soft-shadow:0 8px 24px rgba(15,47,74,.045);
}

/* Tipografía base de labels ya compartida por los pasos modernizados. */
#packageAccordionStay label,
#packageAccordionPrice label,
#packageAccordionCharges label{
  margin:0 0 6px;
  color:var(--text);
  font-size:12px;
  font-weight:850;
  line-height:1.25;
}

/* Primitiva de control: mismos valores visuales que V378, con scope exclusivo
   a Estadía / Precio. Los detalles propios (padding, min-width, etc.) quedan locales. */
#packageAccordionStay .package-stay-profile-grid input:not([type="file"]),
#packageAccordionStay .package-stay-profile-grid select,
#packageAccordionStay > .package-accordion-content > .package-stay-field > textarea,
#packageAccordionPrice input,
#packageAccordionPrice select,
#packageAccordionPrice textarea,
#packageAccordionCharges input,
#packageAccordionCharges select,
#packageAccordionCharges textarea{
  min-height:var(--package-ui-control-height);
  margin-top:0;
  border:1px solid color-mix(in srgb,var(--border) 84%,var(--text-muted) 16%)!important;
  border-radius:var(--package-ui-radius)!important;
  background:var(--card)!important;
  color:var(--text);
  box-shadow:var(--package-ui-control-shadow);
  font-size:14px;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;
}

#packageAccordionStay .package-stay-profile-grid input:not([type="file"]):focus,
#packageAccordionStay .package-stay-profile-grid select:focus,
#packageAccordionStay > .package-accordion-content > .package-stay-field > textarea:focus,
#packageAccordionPrice input:focus,
#packageAccordionPrice select:focus,
#packageAccordionPrice textarea:focus,
#packageAccordionCharges input:focus,
#packageAccordionCharges select:focus,
#packageAccordionCharges textarea:focus{
  border-color:color-mix(in srgb,var(--primary) 62%,var(--border))!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 14%,transparent);
}

/* Acción secundaria compacta utilizada en encabezados de colecciones. */
#packageAccordionStay .package-hotel-head .btn-soft,
#packageAccordionPrice .package-commercial-options-head .btn-soft,
#packageAccordionCharges .package-hotel-head .btn-soft{
  min-height:38px;
  margin:0;
  padding:8px 11px;
  border:1px solid color-mix(in srgb,var(--primary) 20%,var(--border));
  background:var(--primary-soft-2);
  color:var(--primary-hover);
  box-shadow:none;
  font-size:11px;
  font-weight:850;
}

/* Superficie liviana para colecciones repetibles. La geometría y el fondo
   específico de cada módulo permanecen en su hoja especializada. */
#packageAccordionStay .package-hotel-row,
#packageAccordionPrice .package-commercial-option-card,
#packageAccordionCharges .package-charge-row{
  border:1px solid color-mix(in srgb,var(--border) 70%,transparent);
  border-radius:var(--package-ui-radius);
  box-shadow:0 2px 8px rgba(15,47,74,.025);
}
