{"version":3,"sources":["../../../src/govuk/overrides/_spacing.scss"],"names":[],"mappings":"AAAA,GAAG;AACH,mBAAmB;AACnB,GAAG;AACH,eAAe;AACf,6BAA6B;AAC7B,0BAA0B;AAC1B,4BAA4B;;AAE5B,4CAA4C;;AAE5C,yBAAyB;AACzB,EAAE;AACF,YAAY;AACZ,kBAAkB;;AAElB,iEAAiE;;AAEjE,+CAA+C;AAC/C,EAAE;AACF,yEAAyE;AACzE,kDAAkD;AAClD,EAAE;AACF,yEAAyE;AACzE,EAAE;AACF,eAAe;AACf,wBAAwB;AACxB,8BAA8B;AAC9B,KAAK;AACL,EAAE;AACF,mCAAmC;AACnC,0BAA0B;AAC1B,gCAAgC;AAChC,OAAO;AACP,KAAK;AACL,EAAE;AACF,kBAAkB;;AAElB;EACE,sEAAsE;EACtE,yCAAyC;EACzC;IACE;MACE,wEAAwE;IAC1E;;IAEA,wDAAwD;IACxD;MACE;QACE,6EAA6E;MAC/E;IACF;EACF;AACF;;AAEA,2CAA2C;AAC3C,EAAE;AACF,yEAAyE;AACzE,sDAAsD;AACtD,EAAE;AACF,yEAAyE;AACzE,EAAE;AACF,eAAe;AACf,gCAAgC;AAChC,gCAAgC;AAChC,MAAM;AACN,EAAE;AACF,kBAAkB;AAClB;EACE;IACE;MACE,sDAAsD;IACxD;;IAEA;MACE;QACE,oEAAoE;MACtE;IACF;EACF;AACF;;AAEA;EACE,+DAA+D;EAC/D,gEAAgE;;EAEhE,2DAA2D;EAC3D,4DAA4D;AAC9D","file":"_spacing.scss","sourcesContent":["////\n/// @group overrides\n////\n@use \"sass:map\";\n@import \"../settings/spacing\";\n@import \"../tools/exports\";\n@import \"../helpers/spacing\";\n\n// stylelint-disable declaration-no-important\n\n/// Directions for spacing\n///\n/// @type Map\n/// @access private\n\n$_spacing-directions: (\"top\", \"right\", \"bottom\", \"left\") !default;\n\n/// Generate responsive spacing override classes\n///\n/// Generate spacing override classes for the given property (e.g. margin)\n/// for each point in the responsive spacing scale.\n///\n/// @param {String} $property - Property to add spacing to (e.g. 'margin')\n///\n/// @example css\n///  .govuk-\\!-margin-4 {\n///    margin: 15px !important;\n///  }\n///\n///  @media (min-width: 40.0625em) {\n///    .govuk-\\!-margin-4 {\n///      margin: 20px !important;\n///    }\n///  }\n///\n/// @access private\n\n@mixin _govuk-generate-responsive-spacing-overrides($property) {\n  // For each point in the spacing scale (defined in settings), create an\n  // override that affects all directions...\n  @each $scale-point, $scale-map in $govuk-spacing-responsive-scale {\n    .govuk-\\!-#{$property}-#{$scale-point} {\n      @include _govuk-responsive-spacing($scale-point, $property, \"all\", true);\n    }\n\n    // ... and then an override for each individual direction\n    @each $direction in $_spacing-directions {\n      .govuk-\\!-#{$property}-#{$direction}-#{$scale-point} {\n        @include _govuk-responsive-spacing($scale-point, $property, $direction, true);\n      }\n    }\n  }\n}\n\n/// Generate static spacing override classes\n///\n/// Generate spacing override classes for the given property (e.g. margin)\n/// for each point in the non-responsive spacing scale.\n///\n/// @param {String} $property - Property to add spacing to (e.g. 'margin')\n///\n/// @example css\n///   .govuk-\\!-static-margin-4 {\n///      margin: 20px !important;\n///   }\n///\n/// @access private\n@mixin _govuk-generate-static-spacing-overrides($property) {\n  @each $spacing-point in map.keys($govuk-spacing-points) {\n    .govuk-\\!-static-#{$property}-#{$spacing-point} {\n      #{$property}: govuk-spacing($spacing-point) !important;\n    }\n\n    @each $direction in $_spacing-directions {\n      .govuk-\\!-static-#{$property}-#{$direction}-#{$spacing-point} {\n        #{$property}-#{$direction}: govuk-spacing($spacing-point) !important;\n      }\n    }\n  }\n}\n\n@include govuk-exports(\"govuk/overrides/spacing\") {\n  @include _govuk-generate-responsive-spacing-overrides(\"margin\");\n  @include _govuk-generate-responsive-spacing-overrides(\"padding\");\n\n  @include _govuk-generate-static-spacing-overrides(\"margin\");\n  @include _govuk-generate-static-spacing-overrides(\"padding\");\n}\n"]}
