Accessibility
All Kaharagian government websites must be accessible to everyone. We follow WCAG 2.1 Level AA standards.
Our Commitment
The Principality of Kaharagia is committed to ensuring digital services are accessible to everyone, regardless of ability. This design system provides the foundation for building inclusive government websites.
Focus States
All interactive elements must have a clearly visible focus state. We use a distinctive yellow background with a black outline that meets WCAG 2.1 requirements.
Press Tab to see focus states:
The focus state uses:
- Background: Kaharagian Gold (#FEBC0A)
- Outline: 3px black (#0B0C0C)
- Text: Black for maximum contrast
Colour Contrast
All text must meet minimum contrast ratios:
- Normal text: 4.5:1 minimum contrast ratio
- Large text (18px+ or 14px+ bold): 3:1 minimum
- UI components: 3:1 minimum for boundaries
The design system colour palette has been tested to ensure all combinations meet these requirements.
Typography
- Body text: 18px minimum size for comfortable reading
- Line height: 1.5 for body text to improve readability
- Line length: Maximum ~75 characters for optimal reading
- Font: Noto Sans, a highly legible sans-serif typeface
Semantic HTML
Always use semantic HTML elements to provide meaning and structure:
- Use
<header>,<nav>,<main>,<footer> - Use heading levels (
<h1>-<h6>) in order - Use
<button>for actions,<a>for navigation - Use lists (
<ul>,<ol>) for grouped items - Use
<table>with proper headers for tabular data
ARIA Attributes
Use ARIA attributes to enhance accessibility when HTML semantics aren't sufficient:
aria-label- Provide accessible names for icon-only buttonsaria-expanded- Indicate expanded/collapsed statearia-current="page"- Mark current page in navigationaria-describedby- Link to help text or descriptionsaria-hidden="true"- Hide decorative content from screen readers
Skip Links
Every page must include a skip link as the first focusable element:
<a href="#main-content" class="skip-link">
Skip to main content
</a>Images
- Informative images: Include descriptive
alttext - Decorative images: Use empty
alt=""oraria-hidden="true" - Complex images: Provide detailed descriptions in the surrounding text
- Icons with text: Hide the icon, let text convey meaning
- Icon-only buttons: Use
aria-labelto provide accessible name
Forms
- Every input must have an associated
<label> - Use
fieldsetandlegendfor grouped inputs - Provide clear error messages that identify the problem
- Don't rely on colour alone to indicate errors
- Allow sufficient time to complete forms
Keyboard Navigation
All functionality must be operable with a keyboard:
- Tab: Move between interactive elements
- Enter/Space: Activate buttons and links
- Arrow keys: Navigate within components (menus, tabs)
- Escape: Close modals and menus
Testing Checklist
- Navigate the entire page using only the keyboard
- Test with a screen reader (NVDA, VoiceOver, JAWS)
- Check colour contrast with an accessibility tool
- Zoom to 200% and check content is still usable
- Run automated checks (axe, WAVE, Lighthouse)
- Test with users who have disabilities
Resources
- WCAG 2.1 Quick Reference
- MDN Web Accessibility
- Design System References - Learn from other government design systems