@grid-gutter-width: 16px;@line-height-computed: 16px;@screen-xs-max: 767px;@screen-sm-max: 991px;@screen-md-max: 1199px;// Horizontal and vertical offsets @x-0: 0;@x-xs: (@grid-gutter-width / 4);// 4px @x-sm: (@grid-gutter-width / 2);// 8px @x-md: @grid-gutter-width;// 16px @x-lg: (@grid-gutter-width * 2);// 32px @x-xl: (@grid-gutter-width * 4);// 64px @y-0: 0;@y-xs: (@line-height-computed / 4);// 4px @y-sm: (@line-height-computed / 2);// 8px @y-md: @line-height-computed;// 16px @y-lg: (@line-height-computed * 2);// 32px @y-xl: (@line-height-computed * 4);// 64px @positions: t top, r right, b bottom, l left;@sizes: 0, xs, sm, md, lg, xl;.axis(@i) when (mod(@i,2) = 0){@axis: x;}.axis(@i) when (default()){@axis: y;}.prop(@property) when (@property = margin){@prop: m;}.prop(@property) when (@property = padding){@prop: p;}.rules(@prop,@pos,@sizes,@axis,@postfix,@property,@position,@i:1) when (@i <= length(@sizes)){@size: extract(@sizes, @i);@offset: ~"@{axis}-@{size}";{@{property}-@{position}: @@offset}.rules(@prop, @pos, @sizes, @axis, @postfix, @property, @position, (@i + 1));}.ruleset(@positions,@property,@postfix:~"",@i:1) when (@i <= length(@positions)){@pos: extract(extract(@positions, @i), 1);@position: extract(extract(@positions, @i), 2);.axis(@i);.prop(@property);.rules(@prop, @pos, @sizes, @axis, @postfix, @property, @position);.ruleset(@positions, @property, @postfix, (@i + 1));}// Margin & padding modifiers .ruleset(@positions, margin);.ruleset(@positions, padding);// Responsive margin & padding modifiers @media (max-width:@screen-xs-max){.ruleset(@positions, margin, -sm);.ruleset(@positions, padding, -sm);}@media (max-width:@screen-sm-max){.ruleset(@positions, margin, -md);.ruleset(@positions, padding, -md);}@media (max-width:@screen-md-max){.ruleset(@positions, margin, -lg);.ruleset(@positions, padding, -lg);}.mt-0{margin-top:0;padding-top:0}.mt-xs{margin-top:10px;padding-top:10px}.mt-md{margin-top:40px;padding-top:40px}.mt-lg{margin-top:80px;padding-top:80px}.mt-xl{margin-top:160px;padding-top:160px}.mr-0{margin-right:0;padding-right:0}.mr-xs{margin-right:5px;padding-right:5px}.mr-md{margin-right:20px;padding-right:20px}.mr-lg{margin-right:40px;padding-right:40px}.mr-xl{margin-right:80px;padding-right:80px}.mb-0{margin-bottom:0;padding-bottom:0}.mb-xs{margin-bottom:10px;padding-bottom:10px}.mb-md{margin-bottom:40px;padding-bottom:40px}.mb-lg{margin-bottom:80px;padding-bottom:80px}.mb-xl{margin-bottom:160px;padding-bottom:160px}.ml-0{margin-left:0;padding-left:0}.ml-xs{margin-left:5px;padding-left:5px}.ml-md{margin-left:20px;padding-left:20px}.ml-lg{margin-left:40px;padding-left:40px}.ml-xl{margin-left:80px;padding-left:80px}@media (max-width:767px){.mt-0-sm{margin-top:0;padding-top:0}.mt-xs-sm{margin-top:10px;padding-top:10px}.mt-md-sm{margin-top:40px;padding-top:40px}.mt-lg-sm{margin-top:80px;padding-top:80px}.mt-xl-sm{margin-top:160px;padding-top:160px}.mr-0-sm{margin-right:0;padding-right:0}.mr-xs-sm{margin-right:5px;padding-right:5px}.mr-md-sm{margin-right:20px;padding-right:20px}.mr-lg-sm{margin-right:40px;padding-right:40px}.mr-xl-sm{margin-right:80px;padding-right:80px}.mb-0-sm{margin-bottom:0;padding-bottom:0}.mb-xs-sm{margin-bottom:10px;padding-bottom:10px}.mb-md-sm{margin-bottom:40px;padding-bottom:40px}.mb-lg-sm{margin-bottom:80px;padding-bottom:80px}.mb-xl-sm{margin-bottom:160px;padding-bottom:160px}.ml-0-sm{margin-left:0;padding-left:0}.ml-xs-sm{margin-left:5px;padding-left:5px}.ml-md-sm{margin-left:20px;padding-left:20px}.ml-lg-sm{margin-left:40px;padding-left:40px}.ml-xl-sm{margin-left:80px;padding-left:80px}.mt-0-md{margin-top:0;padding-top:0}.mt-xs-md{margin-top:10px;padding-top:10px}.mt-md-md{margin-top:40px;padding-top:40px}.mt-lg-md{margin-top:80px;padding-top:80px}.mt-xl-md{margin-top:160px;padding-top:160px}.mr-0-md{margin-right:0;padding-right:0}.mr-xs-md{margin-right:5px;padding-right:5px}.mr-md-md{margin-right:20px;padding-right:20px}.mr-lg-md{margin-right:40px;padding-right:40px}.mr-xl-md{margin-right:80px;padding-right:80px}.mb-0-md{margin-bottom:0;padding-bottom:0}.mb-xs-md{margin-bottom:10px;padding-bottom:10px}.mb-md-md{margin-bottom:40px;padding-bottom:40px}.mb-lg-md{margin-bottom:80px;padding-bottom:80px}.mb-xl-md{margin-bottom:160px;padding-bottom:160px}.ml-0-md{margin-left:0;padding-left:0}.ml-xs-md{margin-left:5px;padding-left:5px}.ml-md-md{margin-left:20px;padding-left:20px}.ml-lg-md{margin-left:40px;padding-left:40px}.ml-xl-md{margin-left:80px;padding-left:80px}}