{"version":3,"sources":["webpack:///./packages/mdc-layout-grid/mdc-layout-grid.scss","webpack:///./packages/mdc-layout-grid/_mixins.scss"],"names":[],"mappings":";;;;;;;AAuBA,MAEI,uCACA,uCACA,6CAFA,sCACA,sCACA,4CAFA,qCACA,qCACA,2CCsCA,yBDjCJ,iBCoEE,sBACA,cACA,aACA,qDA3CE,+CD5BJ,iBCoEE,sBACA,cACA,aACA,oDAhDE,yBDvBJ,iBCoEE,sBACA,cACA,aACA,mDAtCE,yBDvBJ,wBCyEE,aACA,mBACA,oBACA,aACA,kEAEA,yBD/EF,wBCgFI,aACA,SACA,cACA,qDACA,mDAlEA,+CDlBJ,wBCyEE,aACA,mBACA,oBACA,YACA,iEAEA,yBD/EF,wBCgFI,aACA,SACA,cACA,oDACA,kDAvEA,yBDbJ,wBCyEE,aACA,mBACA,oBACA,YACA,gEAEA,yBD/EF,wBCgFI,aACA,SACA,cACA,mDACA,kDA7DA,yBDZJ,uBCgCE,kCACA,yEAmDA,sBACA,YACA,6DAnDA,yBDnCF,uBCoCI,WACA,wBAmDF,yBDxFF,uBCyFI,UD5Ea,sECmBf,iCACA,wEAEA,yBDtBe,sECuBb,WACA,wBDxBa,sECmBf,kCACA,yEAEA,yBDtBe,sECuBb,WACA,wBDxBa,sECmBf,uBACA,8DAEA,yBDtBe,sECuBb,WACA,wBDxBa,sECmBf,kCACA,yEAEA,yBDtBe,sECuBb,WACA,wBDxBa,sECmBf,kCACA,yEAEA,yBDtBe,sECuBb,WACA,wBDxBa,sECmBf,uBACA,8DAEA,yBDtBe,sECuBb,WACA,wBDxBa,sECmBf,kCACA,yEAEA,yBDtBe,sECuBb,WACA,wBDxBa,sECmBf,kCACA,yEAEA,yBDtBe,sECuBb,WACA,wBDxBa,sECmBf,uBACA,8DAEA,yBDtBe,sECuBb,WACA,wBDxBa,wECmBf,kCACA,yEAEA,yBDtBe,wECuBb,WACA,yBDxBa,wECmBf,kCACA,yEAEA,yBDtBe,wECuBb,WACA,yBDxBa,wECmBf,wBACA,+DAEA,yBDtBe,wECuBb,WACA,0BA9BA,+CDPJ,uBCgCE,uBACA,6DAmDA,sBACA,WACA,4DAnDA,yBDnCF,uBCoCI,WACA,wBAmDF,yBDxFF,uBCyFI,UD5Ea,qECmBf,yBACA,+DAEA,yBDtBe,qECuBb,WACA,wBDxBa,qECmBf,uBACA,6DAEA,yBDtBe,qECuBb,WACA,wBDxBa,qECmBf,yBACA,+DAEA,yBDtBe,qECuBb,WACA,wBDxBa,qECmBf,uBACA,6DAEA,yBDtBe,qECuBb,WACA,wBDxBa,qECmBf,yBACA,+DAEA,yBDtBe,qECuBb,WACA,wBDxBa,qECmBf,uBACA,6DAEA,yBDtBe,qECuBb,WACA,wBDxBa,qECmBf,yBACA,+DAEA,yBDtBe,qECuBb,WACA,wBDxBa,qECmBf,wBACA,8DAEA,yBDtBe,qECuBb,WACA,wBDxBa,qECmBf,wBACA,8DAEA,yBDtBe,qECuBb,WACA,wBDxBa,uECmBf,wBACA,8DAEA,yBDtBe,uECuBb,WACA,wBDxBa,uECmBf,wBACA,8DAEA,yBDtBe,uECuBb,WACA,wBDxBa,uECmBf,wBACA,8DAEA,yBDtBe,uECuBb,WACA,yBAnCA,yBDFJ,uBCgCE,wBACA,6DAmDA,sBACA,WACA,2DAnDA,yBDnCF,uBCoCI,WACA,wBAmDF,yBDxFF,uBCyFI,UD5Ea,oECmBf,uBACA,4DAEA,yBDtBe,oECuBb,WACA,wBDxBa,oECmBf,uBACA,4DAEA,yBDtBe,oECuBb,WACA,wBDxBa,oECmBf,uBACA,4DAEA,yBDtBe,oECuBb,WACA,wBDxBa,oECmBf,wBACA,6DAEA,yBDtBe,oECuBb,WACA,wBDxBa,oECmBf,wBACA,6DAEA,yBDtBe,oECuBb,WACA,wBDxBa,oECmBf,wBACA,6DAEA,yBDtBe,oECuBb,WACA,wBDxBa,oECmBf,wBACA,6DAEA,yBDtBe,oECuBb,WACA,wBDxBa,oECmBf,wBACA,6DAEA,yBDtBe,oECuBb,WACA,wBDxBa,oECmBf,wBACA,6DAEA,yBDtBe,oECuBb,WACA,wBDxBa,sECmBf,wBACA,6DAEA,yBDtBe,sECuBb,WACA,wBDxBa,sECmBf,wBACA,6DAEA,yBDtBe,sECuBb,WACA,wBDxBa,sECmBf,wBACA,6DAEA,yBDtBe,sECuBb,WACA,yBDbA,gCCsEF,ODvEa,CACX,gCCsEF,ODvEa,CACX,gCCsEF,ODvEa,CACX,gCCsEF,ODvEa,CACX,gCCsEF,ODvEa,CACX,gCCsEF,ODvEa,CACX,gCCsEF,ODvEa,CACX,gCCsEF,ODvEa,CACX,gCCsEF,ODvEa,CACX,iCCsEF,QDvEa,CACX,iCCsEF,QDvEa,CACX,iCCsEF,QDvEa,CAOb,kCCqEE,sBAEA,yBDvEF,kCCwEI,kBDpEJ,qCCyEE,kBDrEF,qCCyEE,oBAEA,yBD3EF,qCC4EI,gBAtGF,yBD+BJ,qCCyFE,aACA,yKACE,EA/HA,+CDoCJ,qCCyFE,YACA,oKACE,EApIA,yBDyCJ,qCCyFE,YACA,iKACE,ED/EJ,6BACE,kBACA,cAGF,8BACE,eACA,iB","file":"mdc.layout-grid.min.css","sourcesContent":["// Copyright 2017 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n\n@import \"./variables\";\n@import \"./mixins\";\n\n:root {\n  @each $size in map-keys($mdc-layout-grid-columns) {\n    --mdc-layout-grid-margin-#{$size}: #{map-get($mdc-layout-grid-default-margin, $size)};\n    --mdc-layout-grid-gutter-#{$size}: #{map-get($mdc-layout-grid-default-gutter, $size)};\n    --mdc-layout-grid-column-width-#{$size}: #{map-get($mdc-layout-grid-column-width, $size)};\n  }\n}\n\n// postcss-bem-linter: define layout-grid\n.mdc-layout-grid {\n  @each $size in map-keys($mdc-layout-grid-columns) {\n    @include mdc-layout-grid-media-query_($size) {\n      $margin: map-get($mdc-layout-grid-default-margin, $size);\n\n      @include mdc-layout-grid($size, $margin, $mdc-layout-grid-max-width);\n    }\n  }\n}\n\n.mdc-layout-grid__inner {\n  @each $size in map-keys($mdc-layout-grid-columns) {\n    @include mdc-layout-grid-media-query_($size) {\n      $margin: map-get($mdc-layout-grid-default-margin, $size);\n      $gutter: map-get($mdc-layout-grid-default-gutter, $size);\n\n      @include mdc-layout-grid-inner($size, $margin, $gutter);\n    }\n  }\n}\n\n.mdc-layout-grid__cell {\n  // select the upper breakpoint\n  $upper-breakpoint: nth(map-keys($mdc-layout-grid-columns), 1);\n\n  @each $size in map-keys($mdc-layout-grid-columns) {\n    @include mdc-layout-grid-media-query_($size) {\n      $gutter: map-get($mdc-layout-grid-default-gutter, $size);\n\n      @include mdc-layout-grid-cell($size, $mdc-layout-grid-default-column-span, $gutter);\n\n      @for $span from 1 through map-get($mdc-layout-grid-columns, $upper-breakpoint) {\n        // Span classes.\n        // stylelint-disable max-nesting-depth\n        @at-root .mdc-layout-grid__cell--span-#{$span},\n          .mdc-layout-grid__cell--span-#{$span}-#{$size} {\n          @include mdc-layout-grid-cell-span_($size, $span, $gutter);\n        }\n        // stylelint-enable max-nesting-depth\n      }\n    }\n  }\n\n  // Order override classes.\n  @for $i from 1 through map-get($mdc-layout-grid-columns, $upper-breakpoint) {\n    &--order-#{$i} {\n      @include mdc-layout-grid-cell-order($i);\n    }\n  }\n\n  // Alignment classes.\n  &--align-top {\n    @include mdc-layout-grid-cell-align(top);\n  }\n\n  &--align-middle {\n    @include mdc-layout-grid-cell-align(middle);\n  }\n\n  &--align-bottom {\n    @include mdc-layout-grid-cell-align(bottom);\n  }\n}\n\n.mdc-layout-grid--fixed-column-width {\n  @each $size in map-keys($mdc-layout-grid-columns) {\n    @include mdc-layout-grid-media-query_($size) {\n      $margin: map-get($mdc-layout-grid-default-margin, $size);\n      $gutter: map-get($mdc-layout-grid-default-gutter, $size);\n      $column-width: map-get($mdc-layout-grid-column-width, $size);\n\n      @include mdc-layout-grid-fixed-column-width($size, $margin, $gutter, $column-width);\n    }\n  }\n}\n\n.mdc-layout-grid--align-left {\n  margin-right: auto;\n  margin-left: 0;\n}\n\n.mdc-layout-grid--align-right {\n  margin-right: 0;\n  margin-left: auto;\n}\n// postcss-bem-linter: end\n","// Copyright 2017 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n\n@import \"./variables\";\n\n// returns the lower grid boundary or null if the smallest grid is selected\n@function mdc-layout-grid-breakpoint-min($size) {\n  @if not map-has-key($mdc-layout-grid-columns, $size) {\n    @error \"Invalid style specified! Choose one of #{map-keys($mdc-layout-grid-columns)}\";\n  }\n  $min: map-get($mdc-layout-grid-breakpoints, $size);\n\n  @return if($min > 0, $min, null);\n}\n\n// returns the upper grid boundary or null if the largest grid is selected\n@function mdc-layout-grid-breakpoint-max($size) {\n  @if not map-has-key($mdc-layout-grid-columns, $size) {\n    @error \"Invalid style specified! Choose one of #{map-keys($mdc-layout-grid-columns)}\";\n  }\n  $names: map-keys($mdc-layout-grid-columns);\n  $n: index($names, $size);\n  $prev: if($n > 1, nth($names, $n - 1), null);\n\n  @return if($prev, (mdc-layout-grid-breakpoint-min($prev) - 1px), null);\n}\n\n// Private mixins, meant for internal use.\n@mixin mdc-layout-grid-media-query_($size) {\n  @if not map-has-key($mdc-layout-grid-columns, $size) {\n    @error \"Invalid style specified! Choose one of #{map-keys($mdc-layout-grid-columns)}\";\n  }\n\n  $min: mdc-layout-grid-breakpoint-min($size);\n  $max: mdc-layout-grid-breakpoint-max($size);\n\n  @if $min == null and $max != null {\n    // Phone\n    @media (max-width: $max) {\n      @content;\n    }\n  } @else if $min != null and $max != null {\n    // Tablet\n    @media (min-width: $min) and (max-width: $max) {\n      @content;\n    }\n  } @else if $min != null and $max == null {\n    // Desktop\n    @media (min-width: $min) {\n      @content;\n    }\n  } @else {\n    // Fallback - no breakpoints defined\n    @content;\n  }\n}\n\n@mixin mdc-layout-grid-cell-span_($size, $span, $gutter) {\n  @if not map-has-key($mdc-layout-grid-columns, $size) {\n    @error \"Invalid style specified! Choose one of #{map-keys($mdc-layout-grid-columns)}\";\n  }\n\n  $percent: percentage($span / map-get($mdc-layout-grid-columns, $size));\n\n  @if $percent > 100% {\n    $percent: 100%;\n  }\n\n  width: calc(#{$percent} - #{$gutter});\n  width: calc(#{$percent} - var(--mdc-layout-grid-gutter-#{$size}, #{$gutter}));\n\n  @supports (display: grid) {\n    width: auto;\n    grid-column-end: span min($span, map-get($mdc-layout-grid-columns, $size));\n  }\n}\n\n// Public mixins, meant for developer usage.\n@mixin mdc-layout-grid($size, $margin, $max-width: null) {\n  @if not map-has-key($mdc-layout-grid-columns, $size) {\n    @error \"Invalid style specified! Choose one of #{map-keys($mdc-layout-grid-columns)}\";\n  }\n\n  box-sizing: border-box;\n  margin: 0 auto;\n  padding: $margin;\n  padding: var(--mdc-layout-grid-margin-#{$size}, #{$margin});\n\n  @if $max-width {\n    max-width: $max-width;\n  }\n}\n\n@mixin mdc-layout-grid-inner($size, $margin, $gutter) {\n  @if not map-has-key($mdc-layout-grid-columns, $size) {\n    @error \"Invalid style specified! Choose one of #{map-keys($mdc-layout-grid-columns)}\";\n  }\n\n  display: flex;\n  flex-flow: row wrap;\n  align-items: stretch;\n  margin: -$gutter / 2;\n  margin: calc(var(--mdc-layout-grid-gutter-#{$size}, #{$gutter}) / 2 * -1);\n\n  @supports (display: grid) {\n    display: grid;\n    margin: 0;\n    grid-gap: $gutter;\n    grid-gap: var(--mdc-layout-grid-gutter-#{$size}, $gutter);\n    grid-template-columns: repeat(map-get($mdc-layout-grid-columns, $size), minmax(0, 1fr));\n  }\n}\n\n@mixin mdc-layout-grid-cell($size, $default-span, $gutter) {\n  @if not map-has-key($mdc-layout-grid-columns, $size) {\n    @error \"Invalid style specified! Choose one of #{map-keys($mdc-layout-grid-columns)}\";\n  }\n\n  @include mdc-layout-grid-cell-span_($size, $default-span, $gutter);\n\n  box-sizing: border-box;\n  margin: $gutter / 2;\n  margin: calc(var(--mdc-layout-grid-gutter-#{$size}, #{$gutter}) / 2);\n\n  @supports (display: grid) {\n    margin: 0;\n  }\n}\n\n@mixin mdc-layout-grid-cell-order($order) {\n  order: $order;\n}\n\n@mixin mdc-layout-grid-cell-align($position) {\n  @if $position == \"top\" {\n    align-self: flex-start;\n\n    @supports (display: grid) {\n      align-self: start;\n    }\n  }\n\n  @if $position == \"middle\" {\n    align-self: center;\n  }\n\n  @if $position == \"bottom\" {\n    align-self: flex-end;\n\n    @supports (display: grid) {\n      align-self: end;\n    }\n  }\n\n  @if $position == \"stretch\" {\n    align-self: stretch;\n  }\n}\n\n@mixin mdc-layout-grid-fixed-column-width($size, $margin, $gutter, $column-width) {\n  @if not map-has-key($mdc-layout-grid-columns, $size) {\n    @error \"Invalid style specified! Choose one of #{map-keys($mdc-layout-grid-columns)}\";\n  }\n\n  $columnCount: map-get($mdc-layout-grid-columns, $size);\n  $gutter-number: $columnCount - 1;\n  $margin-number: 2;\n\n  width: $column-width * $columnCount + $gutter * $gutter-number + $margin * $margin-number;\n  width:\n    calc(\n      var(--mdc-layout-grid-column-width-#{$size}, #{$column-width}) * #{$columnCount} +\n      var(--mdc-layout-grid-gutter-#{$size}, #{$gutter}) * #{$gutter-number} +\n      var(--mdc-layout-grid-margin-#{$size}, #{$margin}) * #{$margin-number}\n    );\n}\n"],"sourceRoot":""}