diff --git a/docs/styleguide/components/interactive-elements.html b/docs/styleguide/components/interactive-elements.html
index 28e833c..53e178c 100644
--- a/docs/styleguide/components/interactive-elements.html
+++ b/docs/styleguide/components/interactive-elements.html
@@ -149,6 +149,46 @@
+
+
Variante aktivierbar
@@ -493,6 +533,19 @@
Option nicht verfügbar
+
+
+
form-invalid
+
+
+ Bitte mindestens eine Option auswählen.
+
+
@@ -568,6 +621,30 @@
+
+
form-invalid
+
+ Label
+
+
+
+
+ Radio 1
+
+
+
+ Radio 2
+
+
+
+ Bitte eine Option auswählen.
+
+
+
Variante ohne Gesamtlabel
diff --git a/docs/styleguide/styles/10-components-interactive-elements.css b/docs/styleguide/styles/10-components-interactive-elements.css
index 8dde8d5..c38db4d 100644
--- a/docs/styleguide/styles/10-components-interactive-elements.css
+++ b/docs/styleguide/styles/10-components-interactive-elements.css
@@ -407,10 +407,44 @@
box-shadow: 0 0 0 1px var(--color-signal-red) inset;
}
+ .sg-pulldown[aria-invalid="true"],
+ .sg-checkbox-field[aria-invalid="true"],
+ .sg-radio-field[aria-invalid="true"] {
+ box-shadow: 0 0 0 1px var(--color-signal-red) inset;
+ }
+
.sg-labeled-input-row:has(.sg-input-multi-line) {
align-items: flex-start;
}
+ #component-radio-field .sg-labeled-input-row--radio-invalid {
+ display: grid;
+ grid-template-columns: auto minmax(0, 1fr);
+ column-gap: var(--spacing-large);
+ row-gap: var(--spacing-small);
+ align-items: start;
+ }
+
+ #component-radio-field .sg-labeled-input-row--radio-invalid .sg-label {
+ grid-column: 1;
+ grid-row: 1;
+ margin-right: 0;
+ }
+
+ #component-radio-field .sg-labeled-input-row--radio-invalid .sg-radio-field-row {
+ grid-column: 2;
+ grid-row: 1;
+ }
+
+ #component-radio-field .sg-labeled-input-row--radio-invalid .sg-form-validation-text {
+ grid-column: 1 / -1;
+ grid-row: 2;
+ }
+
+ #component-checkbox-field .sg-input-validation-stack--checkbox-invalid {
+ gap: calc(var(--spacing-small) / 4);
+ }
+
.sg-input-multi-line {
box-sizing: border-box;
min-height: calc(var(--interaction-height) * 2.75);
diff --git a/docs/styleguide/styles/37-layouts-page-layout-public.css b/docs/styleguide/styles/37-layouts-page-layout-public.css
index 3a3ae74..a1e5c91 100644
--- a/docs/styleguide/styles/37-layouts-page-layout-public.css
+++ b/docs/styleguide/styles/37-layouts-page-layout-public.css
@@ -20,7 +20,7 @@ main {
}
.sg-page-layout-public__content-mirror {
- width: 70vw;
+ width: min(calc(100% - (var(--spacing-large) * 2)), 1100px);
max-width: 1100px;
margin-inline: auto;
display: flex;
diff --git a/public/assets/styleguide.upstream.css b/public/assets/styleguide.upstream.css
index 2663144..096baf5 100644
--- a/public/assets/styleguide.upstream.css
+++ b/public/assets/styleguide.upstream.css
@@ -897,10 +897,44 @@ section + section {
box-shadow: 0 0 0 1px var(--color-signal-red) inset;
}
+ .sg-pulldown[aria-invalid="true"],
+ .sg-checkbox-field[aria-invalid="true"],
+ .sg-radio-field[aria-invalid="true"] {
+ box-shadow: 0 0 0 1px var(--color-signal-red) inset;
+ }
+
.sg-labeled-input-row:has(.sg-input-multi-line) {
align-items: flex-start;
}
+ #component-radio-field .sg-labeled-input-row--radio-invalid {
+ display: grid;
+ grid-template-columns: auto minmax(0, 1fr);
+ column-gap: var(--spacing-large);
+ row-gap: var(--spacing-small);
+ align-items: start;
+ }
+
+ #component-radio-field .sg-labeled-input-row--radio-invalid .sg-label {
+ grid-column: 1;
+ grid-row: 1;
+ margin-right: 0;
+ }
+
+ #component-radio-field .sg-labeled-input-row--radio-invalid .sg-radio-field-row {
+ grid-column: 2;
+ grid-row: 1;
+ }
+
+ #component-radio-field .sg-labeled-input-row--radio-invalid .sg-form-validation-text {
+ grid-column: 1 / -1;
+ grid-row: 2;
+ }
+
+ #component-checkbox-field .sg-input-validation-stack--checkbox-invalid {
+ gap: calc(var(--spacing-small) / 4);
+ }
+
.sg-input-multi-line {
box-sizing: border-box;
min-height: calc(var(--interaction-height) * 2.75);
@@ -3380,7 +3414,7 @@ main {
}
.sg-page-layout-public__content-mirror {
- width: 70vw;
+ width: min(calc(100% - (var(--spacing-large) * 2)), 1100px);
max-width: 1100px;
margin-inline: auto;
display: flex;
diff --git a/public/assets/styleguide.upstream.meta.json b/public/assets/styleguide.upstream.meta.json
index 8ce92ce..164b065 100644
--- a/public/assets/styleguide.upstream.meta.json
+++ b/public/assets/styleguide.upstream.meta.json
@@ -1,7 +1,7 @@
{
"styleguideVersion": "2026.05.18.1",
- "styleguideCommit": "6c103d1",
- "syncedAtUtc": "2026-06-22T13:27:18Z",
+ "styleguideCommit": "1f478a8",
+ "syncedAtUtc": "2026-06-22T16:24:15Z",
"sourceRepo": "/Users/mathias/Documents/Dokumente Chouchou/Codebases/Styleguide",
"mirroredDocsPath": "docs/styleguide"
}
diff --git a/public/assets/styles.css b/public/assets/styles.css
index 2663144..096baf5 100644
--- a/public/assets/styles.css
+++ b/public/assets/styles.css
@@ -897,10 +897,44 @@ section + section {
box-shadow: 0 0 0 1px var(--color-signal-red) inset;
}
+ .sg-pulldown[aria-invalid="true"],
+ .sg-checkbox-field[aria-invalid="true"],
+ .sg-radio-field[aria-invalid="true"] {
+ box-shadow: 0 0 0 1px var(--color-signal-red) inset;
+ }
+
.sg-labeled-input-row:has(.sg-input-multi-line) {
align-items: flex-start;
}
+ #component-radio-field .sg-labeled-input-row--radio-invalid {
+ display: grid;
+ grid-template-columns: auto minmax(0, 1fr);
+ column-gap: var(--spacing-large);
+ row-gap: var(--spacing-small);
+ align-items: start;
+ }
+
+ #component-radio-field .sg-labeled-input-row--radio-invalid .sg-label {
+ grid-column: 1;
+ grid-row: 1;
+ margin-right: 0;
+ }
+
+ #component-radio-field .sg-labeled-input-row--radio-invalid .sg-radio-field-row {
+ grid-column: 2;
+ grid-row: 1;
+ }
+
+ #component-radio-field .sg-labeled-input-row--radio-invalid .sg-form-validation-text {
+ grid-column: 1 / -1;
+ grid-row: 2;
+ }
+
+ #component-checkbox-field .sg-input-validation-stack--checkbox-invalid {
+ gap: calc(var(--spacing-small) / 4);
+ }
+
.sg-input-multi-line {
box-sizing: border-box;
min-height: calc(var(--interaction-height) * 2.75);
@@ -3380,7 +3414,7 @@ main {
}
.sg-page-layout-public__content-mirror {
- width: 70vw;
+ width: min(calc(100% - (var(--spacing-large) * 2)), 1100px);
max-width: 1100px;
margin-inline: auto;
display: flex;