@rijkshuisstijl-community/components-css 1.0.0-alpha.8 → 1.0.0-alpha.80

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/dist/index.css +22 -0
  2. package/index.scss +47 -0
  3. package/package.json +19 -11
  4. package/src/accordion/index.scss +68 -0
  5. package/src/action-group/index.scss +11 -0
  6. package/src/alert/index.scss +27 -0
  7. package/src/article/index.scss +1 -0
  8. package/src/badgecounter/index.scss +3 -0
  9. package/src/blockquote/_mixin.scss +85 -0
  10. package/src/blockquote/index.scss +41 -0
  11. package/src/breadcrumb-nav/index.scss +28 -0
  12. package/src/button/_mixin.scss +36 -0
  13. package/src/button/index.scss +18 -0
  14. package/src/card/_mixin.scss +174 -0
  15. package/src/card/index.scss +108 -0
  16. package/src/checkbox/_mixin.scss +103 -0
  17. package/src/checkbox/index.scss +34 -0
  18. package/src/dot-badge/_mixin.scss +12 -0
  19. package/src/dot-badge/index.scss +9 -0
  20. package/src/figure/index.scss +18 -0
  21. package/src/file-input/index.scss +49 -0
  22. package/src/footer/index.scss +71 -0
  23. package/src/form/index.scss +18 -0
  24. package/src/form-field/index.scss +13 -0
  25. package/src/form-field-error-message/index.scss +15 -0
  26. package/src/form-field-radio-option/index.scss +21 -0
  27. package/src/hero/_mixin.scss +103 -0
  28. package/src/hero/index.scss +81 -0
  29. package/src/link/_mixin.scss +38 -0
  30. package/src/link/index.scss +44 -0
  31. package/src/link-list/index.scss +16 -0
  32. package/src/link-list-card/index.scss +10 -0
  33. package/src/logo/_mixin.scss +58 -0
  34. package/src/logo/index.scss +31 -0
  35. package/src/message-list/_mixin.scss +85 -0
  36. package/src/message-list/index.scss +41 -0
  37. package/src/navbar/index.scss +90 -0
  38. package/src/navigation-list/_mixin.scss +94 -0
  39. package/src/navigation-list/index.scss +43 -0
  40. package/src/ordered-list/index.scss +18 -0
  41. package/src/pre-heading/index.scss +22 -0
  42. package/src/radio/index.scss +27 -0
  43. package/src/radio-group/_mixin.scss +12 -0
  44. package/src/radio-group/index.scss +10 -0
  45. package/src/select/index.scss +16 -0
  46. package/src/separator/index.scss +14 -0
  47. package/src/side-nav/index.scss +52 -0
  48. package/src/skip-link/_mixin.scss +13 -0
  49. package/src/skip-link/index.scss +43 -0
  50. package/src/table/index.scss +56 -0
  51. package/src/textarea/index.scss +8 -0
  52. package/src/textbox/index.scss +6 -0
  53. package/src/toggletip/_mixin.scss +59 -0
  54. package/src/toggletip/index.scss +48 -0
  55. package/src/unordered-list/index.scss +27 -0
  56. package/vite.config.js +18 -0
  57. package/button/README.md +0 -3
  58. package/button/index.scss +0 -16
package/index.scss ADDED
@@ -0,0 +1,47 @@
1
+ /**
2
+ * @license EUPL-1.2
3
+ * Copyright (c) 2021 Community for NL Design System
4
+ */
5
+
6
+ @use "@utrecht/component-library-css/dist/index.css";
7
+ @use "@utrecht/component-library-css/dist/html.css";
8
+
9
+ @use "src/accordion/index" as accordion;
10
+ @use "src/action-group/index" as actionGroup;
11
+ @use "src/alert/index" as alert;
12
+ @use "src/article/index" as article;
13
+ @use "src/blockquote/index" as blockquote;
14
+ @use "src/breadcrumb-nav/index" as breadcrumb;
15
+ @use "src/button/index" as button;
16
+ @use "src/card/index" as card;
17
+ @use "src/dot-badge/index" as dotBadge;
18
+ @use "src/checkbox/index" as checkbox;
19
+ @use "src/figure/index" as figure;
20
+ @use "src/file-input/index" as fileInput;
21
+ @use "src/form/index" as form;
22
+ @use "src/form-field/index" as formField;
23
+ @use "src/form-field-error-message/index" as formFieldError;
24
+ @use "src/form-field-radio-option/index" as FormFieldRadio;
25
+ @use "src/footer/index" as footer;
26
+ @use "src/hero/index" as hero;
27
+ @use "src/link-list/index" as linkList;
28
+ @use "src/link-list-card/index" as linkListCard;
29
+ @use "src/link/index" as link;
30
+ @use "src/logo/index" as logo;
31
+ @use "src/navbar/index" as navbar;
32
+ @use "src/message-list/index" as messageList;
33
+ @use "src/navigation-list/index" as navigationList;
34
+ @use "src/ordered-list/index" as orderedList;
35
+ @use "src/radio/index" as radio;
36
+ @use "src/radio-group/index" as radioGroup;
37
+ @use "src/select/index" as select;
38
+ @use "src/separator/index" as separator;
39
+ @use "src/side-nav/index" as sideNav;
40
+ @use "src/skip-link/index" as skipLink;
41
+ @use "src/table/index" as table;
42
+ @use "src/textarea/index" as textarea;
43
+ @use "src/textbox/index" as textbox;
44
+ @use "src/toggletip/index" as toggletip;
45
+ @use "src/unordered-list/index" as unorderedList;
46
+ @use "src/badgecounter/index" as badgecounter;
47
+ @use "src/pre-heading/index" as preHeading;
package/package.json CHANGED
@@ -1,25 +1,33 @@
1
1
  {
2
- "version": "1.0.0-alpha.8",
2
+ "name": "@rijkshuisstijl-community/components-css",
3
+ "version": "1.0.0-alpha.80",
3
4
  "author": "Community for NL Design System",
4
5
  "description": "CSS Components for a design system based on the NL Design System architecture",
5
6
  "license": "EUPL-1.2",
6
- "name": "@rijkshuisstijl-community/components-css",
7
7
  "keywords": [
8
8
  "nl-design-system"
9
9
  ],
10
10
  "private": false,
11
11
  "publishConfig": {
12
- "access": "restricted",
12
+ "access": "public",
13
13
  "registry": "https://registry.npmjs.org/"
14
14
  },
15
+ "repository": {
16
+ "type": "git+ssh",
17
+ "url": "git@github.com:nl-design-system/rijkshuisstijl-community.git",
18
+ "directory": "packages/components-css"
19
+ },
15
20
  "devDependencies": {
16
- "@babel/core": "7.22.11",
17
- "@mdx-js/react": "2.3.0",
18
- "@storybook/addon-docs": "7.4.0",
19
- "react": "18.2.0",
20
- "react-dom": "18.2.0",
21
- "typescript": "5.2.2",
22
- "webpack": "5.88.2"
21
+ "scss": "0.2.4",
22
+ "vite": "6.0.1"
23
+ },
24
+ "scripts": {
25
+ "dev": "vite build --watch",
26
+ "build": "pnpm run build:css",
27
+ "build:css": "vite build"
28
+ },
29
+ "dependencies": {
30
+ "@utrecht/component-library-css": "7.0.0"
23
31
  },
24
- "gitHead": "0ebb5b835053731c4c65b00901b4e4f2265527e3"
32
+ "gitHead": "4cfb96f419392c8e64afb6c20d57b00ce886b54e"
25
33
  }
@@ -0,0 +1,68 @@
1
+ /**
2
+ * @license EUPL-1.2
3
+ * Copyright (c) 2021 Community for NL Design System
4
+ */
5
+
6
+ @use "../button/mixin";
7
+
8
+ .utrecht-accordion {
9
+ color: var(--rhc-accordion-color, inherit);
10
+ display: flex;
11
+ flex-direction: column;
12
+ margin-block-end: var(--utrecht-accordion-margin-block-end);
13
+ row-gap: var(--utrecht-accordion-row-gap, inherit);
14
+ }
15
+
16
+ .utrecht-accordion__header {
17
+ margin-block-end: var(--rhc-accordion-header-margin-block-end, var(--rhc-accordion-header-margin, inherit));
18
+ margin-block-start: var(--rhc-accordion-header-margin-block-start, var(--rhc-accordion-header-margin, inherit));
19
+ margin-inline-end: var(--rhc-accordion-header-margin-inline-end, var(--rhc-accordion-header-margin, inherit));
20
+ margin-inline-start: var(--rhc-accordion-header-margin-inline-start, var(--rhc-accordion-header-margin, inherit));
21
+ }
22
+
23
+ .utrecht-accordion__section {
24
+ border-block-end-width: var(
25
+ --rhc-accordion-section-border-block-end-width,
26
+ var(--rhc-accordion-section-border-width, inherit)
27
+ );
28
+ border-block-start-width: var(
29
+ --rhc-accordion-section-border-block-start-width,
30
+ var(--rhc-accordion-section-border-width, inherit)
31
+ );
32
+ border-color: var(--rhc-accordion-section-border-color, inherit);
33
+ border-inline-end-width: var(
34
+ --rhc-accordion-section-border-inline-end-width,
35
+ var(--rhc-accordion-section-border-width, inherit)
36
+ );
37
+ border-inline-start-width: var(
38
+ --rhc-accordion-section-border-inline-start-width,
39
+ var(--rhc-accordion-section-border-width, inherit)
40
+ );
41
+ border-style: solid;
42
+ }
43
+
44
+ .utrecht-button.utrecht-accordion__button {
45
+ --_utrecht-button-appearance-font-weight: var(--rhc-accordion-button-font-weight, inherit);
46
+ --utrecht-button-border-radius: var(--rhc-accordion-border-radius, inherit);
47
+ --utrecht-button-padding-block-end: var(--rhc-accordion-button-padding-block-end, inherit);
48
+ --utrecht-button-padding-block-start: var(--rhc-accordion-button-padding-block-start, inherit);
49
+ --utrecht-button-padding-inline-end: var(--rhc-accordion-button-padding-inline-end, inherit);
50
+ --utrecht-button-padding-inline-start: var(--rhc-accordion-button-padding-inline-start, inherit);
51
+
52
+ align-items: start;
53
+ }
54
+
55
+ .utrecht-accordion__button:focus-visible,
56
+ .utrecht-accordion__button--focus-visible {
57
+ @include mixin.rhc-button--focus-visible;
58
+ }
59
+
60
+ .utrecht-accordion__button-icon {
61
+ align-items: center;
62
+ block-size: var(--utrecht-accordion-button-icon-size);
63
+ display: flex;
64
+ fill: var(--utrecht-accordion-button-color, inherit);
65
+ inline-size: var(--utrecht-accordion-button-icon-size);
66
+ justify-content: center;
67
+ margin-block: var(--rhc-accordion-button-icon-margin-block);
68
+ }
@@ -0,0 +1,11 @@
1
+ .utrecht-button-group {
2
+ column-gap: var(--utrecht-button-group-column-gap, 0.5rem);
3
+ row-gap: var(--utrecht-button-group-row-gap, 0.5rem);
4
+ @media (width <= 768px) {
5
+ flex-direction: column;
6
+ .utrecht-button,
7
+ .utrecht-button-link {
8
+ min-inline-size: 100%;
9
+ }
10
+ }
11
+ }
@@ -0,0 +1,27 @@
1
+ /**
2
+ * @license EUPL-1.2
3
+ * Copyright (c) 2021 Community for NL Design System
4
+ */
5
+
6
+ .rhc-alert__container {
7
+ display: flex;
8
+ }
9
+
10
+ .rhc-alert__icon-container {
11
+ inline-size: var(--utrecht-alert-icon-size);
12
+ inset-block-start: var(--utrecht-alert-icon-inset-block-start);
13
+ min-inline-size: var(--utrecht-alert-icon-size);
14
+ padding-inline-end: var(--rhc-space-100);
15
+ &--ok {
16
+ color: var(--rhc-color-feedback-success-default);
17
+ }
18
+ &--error {
19
+ color: var(--rhc-color-feedback-error-default);
20
+ }
21
+ &--warning {
22
+ color: var(--rhc-color-feedback-warning-default);
23
+ }
24
+ &--info {
25
+ color: var(--rhc-color-feedback-info-default);
26
+ }
27
+ }
@@ -0,0 +1 @@
1
+ // if needed add styles here for the Article components.
@@ -0,0 +1,3 @@
1
+ .utrecht-badge-counter {
2
+ align-content: center;
3
+ }
@@ -0,0 +1,85 @@
1
+ /**
2
+ * @license EUPL-1.2
3
+ * Copyright (c) 2021 Community for NL Design System
4
+ */
5
+
6
+ @mixin rhc-blockquote {
7
+ background-color: var(--utrecht-blockquote-background-color);
8
+ border-block-end-width: var(--utrecht-blockquote-border-block-end-width);
9
+ border-block-start-width: var(--utrecht-blockquote-border-block-start-width);
10
+ border-color: var(--utrecht-blockquote-border-color);
11
+ border-end-end-radius: var(--utrecht-blockquote-border-end-end-radius);
12
+ border-end-start-radius: var(--utrecht-blockquote-border-end-start-radius);
13
+ border-inline-end-width: var(--utrecht-blockquote-border-inline-end-width);
14
+ border-inline-start-width: var(--utrecht-blockquote-border-inline-start-width);
15
+ border-start-end-radius: var(--utrecht-blockquote-border-start-end-radius);
16
+ border-start-start-radius: var(--utrecht-blockquote-border-start-start-radius);
17
+ border-style: solid;
18
+ display: flex;
19
+ flex-direction: column;
20
+ padding-block-end: var(--utrecht-blockquote-padding, var(--utrecht-blockquote-padding-block-end));
21
+ padding-block-start: var(--utrecht-blockquote-padding, var(--utrecht-blockquote-padding-block-start));
22
+ padding-inline-end: var(--utrecht-blockquote-padding, var(--utrecht-blockquote-padding-inline-end));
23
+ padding-inline-start: var(--utrecht-blockquote-padding, var(--utrecht-blockquote-padding-inline-start));
24
+ row-gap: var(--utrecht-blockquote-row-gap, inherit);
25
+ }
26
+
27
+ @mixin rhc-blockquote-variation($variation) {
28
+ background-color: var(
29
+ --utrecht-blockquote-#{$variation}-background-color,
30
+ var(--utrecht-blockquote-background-color)
31
+ );
32
+ border-block-end-width: var(
33
+ --utrecht-blockquote-#{$variation}-border-block-end-width,
34
+ var(--utrecht-blockquote-border-block-end-width)
35
+ );
36
+ border-block-start-width: var(
37
+ --utrecht-blockquote-#{$variation}-border-block-start-width,
38
+ var(--utrecht-blockquote-border-block-start-width)
39
+ );
40
+ border-color: var(--utrecht-blockquote-#{$variation}-border-color, var(--utrecht-blockquote-border-color));
41
+ border-end-end-radius: var(
42
+ --utrecht-blockquote-#{$variation}-border-end-end-radius,
43
+ var(--utrecht-blockquote-border-end-end-radius)
44
+ );
45
+ border-end-start-radius: var(
46
+ --utrecht-blockquote-#{$variation}-border-end-start-radius,
47
+ var(--utrecht-blockquote-border-end-start-radius)
48
+ );
49
+ border-inline-end-width: var(
50
+ --utrecht-blockquote-#{$variation}-border-inline-end-width,
51
+ var(--utrecht-blockquote-border-inline-end-width)
52
+ );
53
+ border-inline-start-width: var(
54
+ --utrecht-blockquote-#{$variation}-border-inline-start-width,
55
+ var(--utrecht-blockquote-border-inline-start-width)
56
+ );
57
+ border-start-end-radius: var(
58
+ --utrecht-blockquote-#{$variation}-border-start-end-radius,
59
+ var(--utrecht-blockquote-border-start-end-radius)
60
+ );
61
+ border-start-start-radius: var(
62
+ --utrecht-blockquote-#{$variation}-border-start-start-radius,
63
+ var(--utrecht-blockquote-border-start-start-radius)
64
+ );
65
+ color: var(--utrecht-blockquote-#{$variation}-color, var(--utrecht-blockquote-content-color));
66
+ font-family: var(--utrecht-blockquote-#{$variation}-font-family, var(--utrecht-blockquote-content-font-family));
67
+ font-size: var(--utrecht-blockquote-#{$variation}-font-size, var(--utrecht-blockquote-content-font-size));
68
+ padding-block-end: var(
69
+ --utrecht-blockquote-#{$variation}-padding,
70
+ var(--utrecht-blockquote-#{$variation}-padding-block-end, var(--utrecht-blockquote-padding-block-end))
71
+ );
72
+ padding-block-start: var(
73
+ --utrecht-blockquote-#{$variation}-padding,
74
+ var(--utrecht-blockquote-#{$variation}-padding-block-start, var(--utrecht-blockquote-padding-block-start))
75
+ );
76
+ padding-inline-end: var(
77
+ --utrecht-blockquote-#{$variation}-padding,
78
+ var(--utrecht-blockquote-#{$variation}-padding-inline-end, var(--utrecht-blockquote-padding-inline-end))
79
+ );
80
+ padding-inline-start: var(
81
+ --utrecht-blockquote-#{$variation}-padding,
82
+ var(--utrecht-blockquote-#{$variation}-padding-inline-start, var(--utrecht-blockquote-padding-inline-start))
83
+ );
84
+ row-gap: var(--utrecht-blockquote-#{$variation}-row-gap, var(--utrecht-blockquote-row-gap));
85
+ }
@@ -0,0 +1,41 @@
1
+ /**
2
+ * @license EUPL-1.2
3
+ * Copyright (c) 2021 Community for NL Design System
4
+ */
5
+
6
+ @use "mixin";
7
+
8
+ .rhc-blockquote {
9
+ --utrecht-blockquote-color: var(--utrecht-blockquote-content-color);
10
+ --utrecht-blockquote-font-size: var(--utrecht-blockquote-content-font-size);
11
+ --utrecht-document-font-family: var(--utrecht-blockquote-content-font-family);
12
+
13
+ @include mixin.rhc-blockquote;
14
+ }
15
+
16
+ .utrecht-blockquote__attribution {
17
+ font-family: var(--utrecht-blockquote-attribution-font-family, inherit);
18
+ }
19
+
20
+ .utrecht-blockquote__quote {
21
+ margin-block-end: 0;
22
+ margin-block-start: 0;
23
+ margin-inline-end: 0;
24
+ margin-inline-start: 0;
25
+ }
26
+
27
+ .rhc-blockquote--blue-corner-border-variation {
28
+ @include mixin.rhc-blockquote-variation("blue-corner-border-variation");
29
+ }
30
+
31
+ .rhc-blockquote--pink-background-variation {
32
+ @include mixin.rhc-blockquote-variation("pink-background-variation");
33
+ }
34
+
35
+ .rhc-blockquote--pink-left-border-variation {
36
+ @include mixin.rhc-blockquote-variation("pink-left-border-variation");
37
+ }
38
+
39
+ .rhc-blockquote--pink-corner-border-variation {
40
+ @include mixin.rhc-blockquote-variation("pink-corner-border-variation");
41
+ }
@@ -0,0 +1,28 @@
1
+ /**
2
+ * @license EUPL-1.2
3
+ * Copyright (c) 2021 Community for NL Design System
4
+ */
5
+
6
+ .utrecht-breadcrumb-nav {
7
+ line-height: var(--utrecht-breadcrumb-nav-line-height, inherit);
8
+ &__link {
9
+ --utrecht-link-icon-inset-block-start: var(--utrecht-breadcrumb-nav-link-icon-inset-block-start, inherit);
10
+
11
+ &--current {
12
+ --utrecht-link-text-decoration-color: var(--utrecht-link-text-decoration-color);
13
+ --utrecht-link-text-decoration: none;
14
+
15
+ color: var(--utrecht-breadcrumb-nav-link-current-color);
16
+ }
17
+ &--active {
18
+ --utrecht-link-text-decoration: var(--utrecht-breadcrumb-nav-link-active-text-decoration, underline);
19
+
20
+ color: var(--utrecht-breadcrumb-nav-link-active-color);
21
+ text-decoration-color: var(--utrecht-breadcrumb-nav-link-active-color);
22
+ }
23
+ }
24
+ &__separator {
25
+ --utrecht-breadcrumb-nav-separator-icon-size: var(--utrecht-breadcrumb-nav-divider-size, 14px);
26
+ --utrecht-breadcrumb-nav-separator-color: --utrecht-breadcrumb-nav-divider-color;
27
+ }
28
+ }
@@ -0,0 +1,36 @@
1
+ /**
2
+ * @license EUPL-1.2
3
+ * Copyright (c) 2020-2022 Gemeente Utrecht
4
+ * Copyright (c) 2020-2022 Frameless B.V.
5
+ */
6
+
7
+ @use "../link/mixin";
8
+
9
+ @mixin rhc-button--icon-only {
10
+ --utrecht-button-padding-block-end: var(--rhc-icon-only-button-padding-block-end, inherit);
11
+ --utrecht-button-padding-block-start: var(--rhc-icon-only-button-padding-block-start, inherit);
12
+ --utrecht-button-padding-inline-end: var(--rhc-icon-only-button-padding-inline-end, inherit);
13
+ --utrecht-button-padding-inline-start: var(--rhc-icon-only-button-padding-inline-start, inherit);
14
+ }
15
+
16
+ @mixin rhc-button--focus-visible {
17
+ @include mixin.rhc-link--focus-visible;
18
+ }
19
+
20
+ @mixin invisible-but-accessible {
21
+ block-size: 1px;
22
+
23
+ /* Source: https://kittygiraudel.com/snippets/sr-only-class/ */
24
+ border: 0;
25
+ clip: rect(1px, 1px, 1px, 1px);
26
+ -webkit-clip-path: inset(50%);
27
+ clip-path: inset(50%);
28
+ inline-size: 1px;
29
+ margin-block: -1px;
30
+ margin-inline: -1px;
31
+ overflow: hidden;
32
+ padding-block: 0;
33
+ padding-inline: 0;
34
+ position: absolute;
35
+ white-space: nowrap;
36
+ }
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @license EUPL-1.2
3
+ * Copyright (c) 2021 Community for NL Design System
4
+ */
5
+ @use "mixin";
6
+
7
+ .rhc-button:focus-visible,
8
+ .rhc-button--focus-visible {
9
+ @include mixin.rhc-button--focus-visible;
10
+ }
11
+
12
+ .rhc-button--icon-only {
13
+ @include mixin.rhc-button--icon-only;
14
+ }
15
+
16
+ .rhc-button--icon-only .rhc-button__sr-only {
17
+ @include mixin.invisible-but-accessible;
18
+ }
@@ -0,0 +1,174 @@
1
+ @mixin rhc-card {
2
+ @include rounded-border-corners;
3
+
4
+ box-sizing: border-box;
5
+ column-gap: var(--rhc-card-as-link-column-gap, 16px);
6
+ display: inline-flex;
7
+ flex-direction: column;
8
+ inline-size: var(--rhc-card-as-link-inline-size, 328px);
9
+ position: relative;
10
+ text-decoration: none;
11
+ }
12
+
13
+ @mixin rhc-card--default {
14
+ background-color: var(--rhc-card-as-link-background-color, white);
15
+ border-color: var(--rhc-card-as-link-border-color, #cbd5e1);
16
+ border-style: solid;
17
+ border-width: var(--rhc-card-as-link-border-width, 1px);
18
+ color: var(--rhc-card-as-link-color, #154273);
19
+ }
20
+
21
+ @mixin rhc-card--full-bleed {
22
+ --rhc-card-as-link-metadata-color: var(
23
+ --rhc-card-as-link-full-bleed-metadata-color,
24
+ var(--rhc-card-as-link-full-bleed-color, white)
25
+ );
26
+
27
+ color: var(--rhc-card-as-link-full-bleed-color, white);
28
+ }
29
+
30
+ @mixin rhc-card--horizontal {
31
+ flex-direction: row;
32
+ gap: 0;
33
+ max-block-size: var(--rhc-card-as-link-horizontal-max-block-size);
34
+ }
35
+
36
+ @mixin rhc-card--active {
37
+ background-color: var(--rhc-card-as-link-active-background-color, #dce3ea);
38
+ }
39
+
40
+ @mixin rhc-card--default--focus {
41
+ background-color: var(--rhc-card-as-link-focus-background-color, #dce3ea);
42
+ }
43
+
44
+ @mixin rhc-card--default--hover {
45
+ background-color: var(--rhc-card-as-link-hover-background-color, #f8fafc);
46
+ }
47
+
48
+ @mixin rhc-card--full-bleed__footer {
49
+ padding-block-end: var(--rhc-card-as-link-full-bleed-padding-block-end, 16px);
50
+ padding-block-start: var(--rhc-card-as-link-full-bleed-padding-block-start, 16px);
51
+ padding-inline-end: var(--rhc-card-as-link-full-bleed-padding-inline-end, 0);
52
+ padding-inline-start: var(--rhc-card-as-link-full-bleed-padding-inline-start, 0);
53
+ }
54
+
55
+ @mixin rhc-card__image {
56
+ aspect-ratio: 16 / 9;
57
+ block-size: 100%;
58
+ }
59
+
60
+ @mixin rhc-card__content {
61
+ display: flex;
62
+ flex-direction: column;
63
+ padding-block-end: var(--rhc-card-as-link-padding-block-end, 16px);
64
+ padding-block-start: var(--rhc-card-as-link-padding-block-start, 16px);
65
+ padding-inline-end: var(--rhc-card-as-link-padding-inline-end, 16px);
66
+ padding-inline-start: var(--rhc-card-as-link-padding-inline-start, 16px);
67
+ row-gap: var(--rhc-card-as-link-row-gap, 12px);
68
+ }
69
+
70
+ @mixin rhc-card--horizontal__content {
71
+ @include rounded-border-corners;
72
+
73
+ background-color: var(--rhc-card-as-link-horizontal-background-color, #154273);
74
+ border-end-start-radius: 0;
75
+ border-start-start-radius: 0;
76
+ color: var(--rhc-card-as-link-horizontal-color, white);
77
+ column-gap: var(--rhc-card-as-link-column-gap, 16px);
78
+ flex-direction: row;
79
+ padding-block-end: var(--rhc-card-as-link-horizontal-padding-block-end, 0);
80
+ padding-block-start: var(--rhc-card-as-link-horizontal-padding-block-start, 0);
81
+ padding-inline-end: var(--rhc-card-as-link-horizontal-padding-inline-end, 0);
82
+ padding-inline-start: var(--rhc-card-as-link-horizontal-padding-inline-start, 0);
83
+ row-gap: var(--rhc-card-as-link-row-gap, 12px);
84
+ }
85
+
86
+ @mixin rhc-card--horizontal__heading {
87
+ inline-size: var(--rhc-card-as-link-horizontal-heading-inline-size);
88
+ }
89
+
90
+ @mixin rhc-card--full-bleed__image-container {
91
+ block-size: 100%;
92
+ inline-size: 100%;
93
+ }
94
+
95
+ @mixin rhc-card--full-bleed__image {
96
+ @include rounded-border-corners;
97
+
98
+ block-size: 100%;
99
+ filter: brightness(var(--rhc-card-as-link-full-bleed-opacity, 0.5));
100
+ inline-size: var(--rhc-card-as-link-inline-size, 328px);
101
+ position: absolute;
102
+ z-index: -1;
103
+ }
104
+
105
+ @mixin rhc-card--horizontal__image {
106
+ @include rounded-border-corners;
107
+
108
+ aspect-ratio: 1 / 1;
109
+ border-end-end-radius: 0;
110
+ border-start-end-radius: 0;
111
+ max-block-size: var(--rhc-card-as-link-horizontal-max-block-size);
112
+ }
113
+
114
+ @mixin rhc-card__heading {
115
+ align-items: center;
116
+ display: flex;
117
+ font-size: var(--rhc-card-as-link-heading-font-size, 24px);
118
+ font-weight: var(--rhc-card-as-link-heading-font-weight, 700);
119
+ }
120
+
121
+ @mixin rhc-card__heading--active {
122
+ text-decoration: var(--rhc-card-as-link-active-text-decoration, underline);
123
+ }
124
+
125
+ @mixin rhc-card__heading--hover {
126
+ text-decoration: var(--rhc-card-as-link-hover-text-decoration, underline);
127
+ }
128
+
129
+ @mixin rhc-card__heading--focus {
130
+ text-decoration: var(--rhc-card-as-link-focus-text-decoration, underline);
131
+ }
132
+
133
+ @mixin rhc-card__icon {
134
+ color: var(--rhc-card-as-link-icon-color, #154273);
135
+ size: var(--rhc-card-as-link-icon-size, 24px);
136
+ }
137
+
138
+ @mixin rhc-card__link {
139
+ color: var(--rhc-card-as-link-link-color, #01689b);
140
+ text-decoration: var(--rhc-card-as-link-link-text-decoration, underline);
141
+ }
142
+
143
+ @mixin rhc-card__link--active {
144
+ --utrecht-link-color: var(--rhc-card-as-link-link-active-color, #42145f);
145
+
146
+ color: var(--rhc-card-as-link-link-active-color, #42145f);
147
+ text-decoration: var(--rhc-card-as-link-link-active-text-decoration, none);
148
+ }
149
+
150
+ @mixin rhc-card__link--hover {
151
+ text-decoration: var(--rhc-card-as-link-link-hover-text-decoration, none);
152
+ }
153
+
154
+ @mixin rhc-card__link--focus {
155
+ text-decoration: var(--rhc-card-as-link-link-focus-text-decoration, none);
156
+ }
157
+
158
+ @mixin rhc-card__metadata {
159
+ color: var(--rhc-card-as-link-metadata-color, #154273);
160
+ }
161
+
162
+ @mixin rounded-border-corners {
163
+ border-end-end-radius: var(--rhc-card-as-link-border-end-end-radius, var(--rhc-card-as-link-border-radius, 5px));
164
+ border-end-start-radius: var(--rhc-card-as-link-border-end-start-radius, var(--rhc-card-as-link-border-radius, 5px));
165
+ border-start-end-radius: var(--rhc-card-as-link-border-start-end-radius, var(--rhc-card-as-link-border-radius, 5px));
166
+ border-start-start-radius: var(
167
+ --rhc-card-as-link-border-start-start-radius,
168
+ var(--rhc-card-as-link-border-radius, 5px)
169
+ );
170
+ }
171
+
172
+ @mixin rhc-card__empty-element {
173
+ display: none;
174
+ }