106 lines
2.8 KiB
SCSS
106 lines
2.8 KiB
SCSS
@use "../utilities/css-variables" as cv;
|
|
@use "../utilities/initial-variables" as iv;
|
|
@use "../utilities/extends";
|
|
@use "../utilities/mixins" as mx;
|
|
|
|
$media-border-color: hsla(
|
|
#{cv.getVar("scheme-h")},
|
|
#{cv.getVar("scheme-s")},
|
|
#{cv.getVar("border-l")},
|
|
0.5
|
|
) !default;
|
|
$media-border-size: 1px !default;
|
|
$media-spacing: 1rem !default;
|
|
$media-spacing-large: 1.5rem !default;
|
|
$media-content-spacing: 0.75rem !default;
|
|
$media-level-1-spacing: 0.75rem !default;
|
|
$media-level-1-content-spacing: 0.5rem !default;
|
|
$media-level-2-spacing: 0.5rem !default;
|
|
|
|
.#{iv.$class-prefix}media {
|
|
@extend %block;
|
|
@include cv.register-vars(
|
|
(
|
|
"media-border-color": #{$media-border-color},
|
|
"media-border-size": #{$media-border-size},
|
|
"media-spacing": #{$media-spacing},
|
|
"media-spacing-large": #{$media-spacing-large},
|
|
"media-content-spacing": #{$media-content-spacing},
|
|
"media-level-1-spacing": #{$media-level-1-spacing},
|
|
"media-level-1-content-spacing": #{$media-level-1-content-spacing},
|
|
"media-level-2-spacing": #{$media-level-2-spacing},
|
|
)
|
|
);
|
|
align-items: flex-start;
|
|
display: flex;
|
|
text-align: inherit;
|
|
|
|
.#{iv.$class-prefix}content:not(:last-child) {
|
|
margin-bottom: cv.getVar("media-content-spacing");
|
|
}
|
|
|
|
.#{iv.$class-prefix}media {
|
|
border-top-color: cv.getVar("media-border-color");
|
|
border-top-style: solid;
|
|
border-top-width: cv.getVar("media-border-size");
|
|
display: flex;
|
|
padding-top: cv.getVar("media-level-1-spacing");
|
|
|
|
.#{iv.$class-prefix}content:not(:last-child),
|
|
.#{iv.$class-prefix}control:not(:last-child) {
|
|
margin-bottom: cv.getVar("media-level-1-content-spacing");
|
|
}
|
|
|
|
.#{iv.$class-prefix}media {
|
|
padding-top: cv.getVar("media-level-2-spacing");
|
|
|
|
& + .#{iv.$class-prefix}media {
|
|
margin-top: cv.getVar("media-level-2-spacing");
|
|
}
|
|
}
|
|
}
|
|
|
|
& + .#{iv.$class-prefix}media {
|
|
border-top-color: cv.getVar("media-border-color");
|
|
border-top-style: solid;
|
|
border-top-width: cv.getVar("media-border-size");
|
|
margin-top: cv.getVar("media-spacing");
|
|
padding-top: cv.getVar("media-spacing");
|
|
}
|
|
|
|
// Sizes
|
|
&.#{iv.$class-prefix}is-large {
|
|
& + .#{iv.$class-prefix}media {
|
|
margin-top: cv.getVar("media-spacing-large");
|
|
padding-top: cv.getVar("media-spacing-large");
|
|
}
|
|
}
|
|
}
|
|
|
|
.#{iv.$class-prefix}media-left,
|
|
.#{iv.$class-prefix}media-right {
|
|
flex-basis: auto;
|
|
flex-grow: 0;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.#{iv.$class-prefix}media-left {
|
|
margin-inline-end: cv.getVar("media-spacing");
|
|
}
|
|
|
|
.#{iv.$class-prefix}media-right {
|
|
margin-inline-start: cv.getVar("media-spacing");
|
|
}
|
|
|
|
.#{iv.$class-prefix}media-content {
|
|
flex-basis: auto;
|
|
flex-grow: 1;
|
|
flex-shrink: 1;
|
|
text-align: inherit;
|
|
}
|
|
|
|
@include mx.mobile {
|
|
.#{iv.$class-prefix}media-content {
|
|
overflow-x: auto;
|
|
}
|
|
}
|