// postcss-bem-linter: define card .mdc-card { @include mdc-elevation(2); display: flex; flex-direction: column; justify-content: flex-end; padding: 0; box-sizing: border-box; &__primary { padding: 16px; // Add extra space before large title. .mdc-card__title--large { padding-top: 8px; } // Add extra padding if this is the last block. &:last-child { padding-bottom: 24px; } } &__supporting-text { padding: 8px 16px; box-sizing: border-box; @include mdc-typography(body1); @include mdc-theme-prop(color, text-primary-on-background); @include mdc-theme-dark(".mdc-card") { @include mdc-theme-prop(color, text-primary-on-dark); } // Remove top padding if immediately preceded by a primary block. .mdc-card__primary + & { margin-top: -8px; padding-top: 0; } // Add extra padding if this is the last block. &:last-child { padding-bottom: 24px; } } &__actions { display: flex; padding: 8px; box-sizing: border-box; // Adjust text color for dark theme. @include mdc-theme-dark(".mdc-card") { @include mdc-theme-prop(color, text-primary-on-dark); } // Tweak button paddings and margins when they're used as actions .mdc-card__action { margin: 0 8px 0 0; } .mdc-card__action:last-child { margin-right: 0; } // Vertical actions (one per line) &--vertical { flex-flow: column; align-items: flex-start; .mdc-card__action { margin: 0 0 4px; } .mdc-card__action:last-child { margin-bottom: 0; } } } &__media { display: flex; flex-direction: column; justify-content: flex-end; padding: 16px; box-sizing: border-box; } &__media-item { display: inline-block; width: auto; height: 80px; margin: 16px 0 0; padding: 0; @each $mult, $name in (1.5: "1dot5", 2: "2", 3: "3") { // postcss-bem-linter: ignore &--#{$name}x { width: auto; height: $mult * 80px; } } } &__title { @include mdc-typography(body2); @include mdc-theme-prop(color, text-primary-on-background); // Adjust text color for dark theme. @include mdc-theme-dark(".mdc-card") { @include mdc-theme-prop(color, text-primary-on-dark); } margin: -.063rem 0; // -1sp 0 } &__title--large { @include mdc-typography(headline); margin: 0; } &__subtitle { @include mdc-typography(body1); @include mdc-theme-prop(color, text-primary-on-background); // Adjust text color for dark theme. @include mdc-theme-dark(".mdc-card") { @include mdc-theme-prop(color, text-primary-on-dark); } margin: -.063rem 0; // -1sp 0 } &__horizontal-block { display: flex; flex-direction: row; align-items: flex-start; justify-content: space-between; padding: 0 16px 0 0; box-sizing: border-box; // postcss-bem-linter: ignore .mdc-card__actions--vertical { margin: 16px; } .mdc-card__media-item { margin-left: 16px; } // postcss-bem-linter: ignore .mdc-card__media-item--3x { margin-bottom: 16px; } } } // postcss-bem-linter: end