Files
breadcrumb-the-shire/web/css/components/app-details-validation-summary.css
fs d9f07dcd63 fix: web/ quick wins — CSS cleanup, ARIA tabs, and file header comments
CSS:
- Remove duplicate li::before block in app-search.css
- Fix typo: search-reuslt → search-result in app-search.css
- Remove commented-out CSS rules in app-flash.css
- Add descriptive header comment to all 27 CSS component files

JS:
- Complete WAI-ARIA Tabs pattern: generate IDs, add aria-controls on
  tab buttons and aria-labelledby on tab panels (app-tabs.js)
- Add JSDoc header comments to ~33 JS files (core + components)
- Add explanatory block comment to app-boot.js (why classic IIFE)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 22:21:37 +01:00

59 lines
1.8 KiB
CSS

@layer components {
/* Validation summary — error list displayed at top of detail forms. */
.app-details-errors {
padding-block-start: 1rem;
}
.app-details-validation-summary {
--app-validation-summary-border-color: var(--app-notice-error-border-color);
--app-validation-summary-background-color: var(--app-notice-error-background-color);
--app-validation-summary-title-color: var(--app-notice-error-color);
--app-validation-summary-link-color: var(--app-contrast);
margin: 0;
border: 1px solid var(--app-validation-summary-border-color);
border-left-width: 4px;
border-radius: var(--app-border-radius);
background: var(--app-validation-summary-background-color);
padding: calc(var(--app-spacing) * 0.75) calc(var(--app-spacing) * 1);
color: var(--app-color);
display: grid;
gap: calc(var(--app-spacing) * 0.55);
}
.app-details-validation-summary:focus-visible {
outline: 2px solid var(--app-validation-summary-border-color);
outline-offset: 2px;
}
.app-details-validation-summary-title {
margin: 0;
font-weight: 600;
color: var(--app-validation-summary-title-color);
}
.app-details-validation-summary-list {
margin: 0;
padding-left: 1.1rem;
display: grid;
gap: calc(var(--app-spacing) * 0.35);
}
.app-details-validation-summary-list li {
margin: 0;
list-style: disc;
}
.app-details-validation-summary-link {
color: var(--app-validation-summary-link-color);
text-decoration: underline;
text-decoration-thickness: 1px;
text-underline-offset: 2px;
transition: color 120ms ease;
}
.app-details-validation-summary-link:hover,
.app-details-validation-summary-link:focus-visible {
color: var(--app-validation-summary-title-color);
}
}