This stylelint-scss rule is useful because we were inconsistent when
using calc(); sometimes we added interpolation to Sass variables, and
sometimes we didn't. The reason why we originally added interpolation
was that it was necessary until we migrated to Dart Sass in commit
d54971e53. Since then, we can omit the interpolation, which is also what
the Sass documentation recommends [1].
[1] https://sass-lang.com/documentation/values/calculations/
202 lines
4.4 KiB
SCSS
202 lines
4.4 KiB
SCSS
@import "mixins/icons";
|
|
@import "mixins/layouts";
|
|
|
|
@mixin public-form-header-background($color, $final-color-width) {
|
|
background-image: linear-gradient(
|
|
to right,
|
|
#{$color} 0,
|
|
#{$color} calc(100% - $final-color-width - 1px),
|
|
#{$body-background} calc(100% - $final-color-width),
|
|
#{$body-background} 100%
|
|
);
|
|
}
|
|
|
|
@mixin public-form-header {
|
|
$border-width: 4px;
|
|
|
|
h1 {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
header {
|
|
$icon-size: $line-height * 4;
|
|
$padding-right: rem-calc(20);
|
|
$icon-size-with-padding: $icon-size + $padding-right;
|
|
$polygon-size: $icon-size * 0.5;
|
|
@include background-till-left-of-screen;
|
|
@include brand-secondary-background;
|
|
border: $border-width solid $brand-secondary;
|
|
border: $border-width solid var(--brand-secondary, $brand-secondary);
|
|
border-bottom-right-radius: rem-calc(12);
|
|
border-top-right-radius: rem-calc(12);
|
|
margin-top: $line-height * 2;
|
|
padding: $line-height * 2 0;
|
|
position: relative;
|
|
|
|
@include breakpoint(small) {
|
|
&::after {
|
|
display: none;
|
|
}
|
|
}
|
|
|
|
@include breakpoint(large) {
|
|
$rounding-error: 6px;
|
|
@include public-form-header-background($brand-secondary, $icon-size-with-padding);
|
|
@include public-form-header-background(var(--brand-secondary, $brand-secondary), $icon-size-with-padding);
|
|
padding-right: $icon-size-with-padding;
|
|
|
|
&::after {
|
|
background: $body-background;
|
|
clip-path: polygon(50% 0, 100% 0, 100% 100%, 50% calc(100% + 1px), 0 50%);
|
|
content: "";
|
|
display: block;
|
|
height: 100%;
|
|
position: absolute;
|
|
right: calc($icon-size-with-padding - $rounding-error);
|
|
top: 0;
|
|
width: $polygon-size;
|
|
}
|
|
}
|
|
|
|
&::before {
|
|
height: calc(100% + $border-width * 2);
|
|
top: -$border-width;
|
|
}
|
|
|
|
h1 {
|
|
$heading-icon-size: $icon-size * 0.85;
|
|
@include has-fa-icon(building, regular);
|
|
font-size: rem-calc(36);
|
|
|
|
@include breakpoint(small) {
|
|
&::after,
|
|
&::before {
|
|
display: none;
|
|
position: absolute;
|
|
top: 50%;
|
|
transform: translateY(-50%);
|
|
}
|
|
}
|
|
|
|
@include breakpoint(medium) {
|
|
padding-right: $heading-icon-size * 2.5;
|
|
|
|
&::after {
|
|
display: block;
|
|
font-size: $heading-icon-size;
|
|
right: $heading-icon-size;
|
|
}
|
|
}
|
|
|
|
@include breakpoint(large) {
|
|
font-size: rem-calc(44);
|
|
|
|
&::after {
|
|
right: calc($icon-size-with-padding + $polygon-size + $heading-icon-size / 2);
|
|
}
|
|
|
|
&::before {
|
|
@include brand-secondary-color;
|
|
display: block;
|
|
font-size: $icon-size;
|
|
right: $padding-right;
|
|
}
|
|
}
|
|
|
|
span {
|
|
display: block;
|
|
font-size: 0.75em;
|
|
margin-top: calc($line-height / 2);
|
|
}
|
|
}
|
|
|
|
a {
|
|
color: inherit;
|
|
text-decoration: underline;
|
|
}
|
|
}
|
|
}
|
|
|
|
%public-form-header {
|
|
@include public-form-header;
|
|
}
|
|
|
|
@mixin public-form {
|
|
|
|
.required-fields {
|
|
@include full-width-background($adjust-padding: true);
|
|
background: $light;
|
|
margin-bottom: $line-height;
|
|
padding-top: $line-height;
|
|
}
|
|
|
|
> fieldset > legend {
|
|
float: left;
|
|
font-size: rem-calc(36);
|
|
font-weight: bold;
|
|
margin-bottom: $line-height;
|
|
text-transform: uppercase;
|
|
|
|
+ * {
|
|
clear: left;
|
|
}
|
|
}
|
|
|
|
select {
|
|
min-height: $line-height * 2;
|
|
|
|
@include breakpoint(medium) {
|
|
&:not(.js-add-language):not(.js-select-language) {
|
|
width: 50%;
|
|
}
|
|
}
|
|
}
|
|
|
|
.globalize-languages,
|
|
.translatable-fields {
|
|
@include grid-row-nest;
|
|
@include grid-column-gutter;
|
|
}
|
|
|
|
[type="submit"] {
|
|
@include regular-button;
|
|
font-size: map-get($button-sizes, large);
|
|
margin-top: $line-height;
|
|
}
|
|
|
|
.actions {
|
|
border: 6px solid $border;
|
|
border-radius: rem-calc(12);
|
|
margin-left: auto;
|
|
margin-right: auto;
|
|
margin-top: $line-height * 2;
|
|
padding: $line-height * 2 $line-height;
|
|
text-align: center;
|
|
|
|
@include breakpoint(medium) {
|
|
width: 75%;
|
|
}
|
|
|
|
label {
|
|
margin-left: auto;
|
|
margin-right: auto;
|
|
}
|
|
}
|
|
}
|
|
|
|
%public-form {
|
|
@include public-form;
|
|
}
|
|
|
|
@mixin admin-fieldset-separator {
|
|
border-top: 4px solid $admin-border-color;
|
|
|
|
> legend {
|
|
color: $admin-text;
|
|
font-size: $small-font-size;
|
|
font-weight: bold;
|
|
padding-right: calc($line-height / 2);
|
|
text-transform: uppercase;
|
|
}
|
|
}
|