# 2. Inclusivity Features

User Type: **Super Administrator**
Source: *Mi Digital Academy - Education CRM Features Document*

---

## 2. Inclusivity Features

### 2.1 Text-to-Speech Configuration
**What it does:** The Super Admin configures the platform's text-to-speech (TTS) engine, voices, and behavior so learners can listen to text content in supported languages.

**Sub-features:**
- TTS engine selection: the TTS provider and engine used for speech synthesis
- Voice catalog: the available voices per language with gender and style
- Default voice: the default voice per language
- TTS coverage: the content types eligible for text-to-speech (lessons, worksheets, descriptions)
- Playback controls: speed, pitch, and pause/resume behavior
- TTS enablement: text-to-speech toggled on or off per content type
- Available on web
- Event logging (action performed)
- Audit logging of text-to-speech configuration

**Super Admin User Journey:**
1. As a Super Admin, open the text-to-speech configuration.
2. Select the TTS engine and review the voice catalog per language.
3. Set the default voice per language and the playback defaults (speed, pitch).
4. Toggle TTS on or off per content type and save.
5. Verify a learner can play text content as speech with the configured defaults.

**Rules & Edge Cases:**
- A TTS engine must be selected before voices are available; no engine means no TTS.
- The default voice per language must be a voice that exists in the selected engine.
- A language with no available voices is not offered for TTS.
- TTS applies only to enabled content types; other content shows no play button.
- Playback speed is bounded (e.g., 0.5x to 2.0x); out-of-range values are rejected.
- TTS is generated on demand; it is not pre-rendered for all content.
- A learner's personal voice preference overrides the platform default for that learner.
- Configuration changes are audit-logged with the actor and timestamp.

### 2.2 Closed Captioning Management
**What it does:** The Super Admin manages closed captioning (CC) for live sessions and video content, distinct from burned-in subtitles, so learners can toggle captions on and off.

**Sub-features:**
- CC track upload: closed captioning tracks uploaded per session or video and language
- CC review: captioning tracks reviewed for accuracy before publication
- CC publication: captioning tracks published per session or video and language
- CC default behavior: captions on/off by default and the default language
- CC style: caption font size, color, and background options
- CC list: the captioning tracks per session or video with language and status
- Available on web
- Event logging (action performed)
- Audit logging of closed captioning management

**Super Admin User Journey:**
1. As a Super Admin, open the closed captioning management for a session or video.
2. Upload the captioning track for a language.
3. Review the track for accuracy and mark the review complete.
4. Publish the track and set the default CC behavior and style.
5. Verify a learner can toggle captions on and off with the configured style.

**Rules & Edge Cases:**
- A captioning track is published only after review; an unreviewed track is not learner-visible.
- A captioning file with invalid timing or format is rejected on upload with the reason.
- A language already covered is replaced on re-upload.
- A session or video with no captioning track shows no caption option.
- The CC default behavior does not force an empty caption track.
- Caption style options are bounded; invalid style values fall back to the platform default.
- CC is distinct from subtitles: CC is toggleable by the learner at any time.
- Captioning changes are audit-logged with the actor and timestamp.

### 2.3 Dyslexia-Friendly Font Settings
**What it does:** The Super Admin configures dyslexia-friendly typography options so learners with dyslexia can read content with reduced visual stress.

**Sub-features:**
- Dyslexia font enablement: dyslexia-friendly fonts toggled on or off
- Font selection: the dyslexia-friendly font family used (e.g., OpenDyslexic)
- Typography defaults: letter spacing, line height, and word spacing defaults
- Scope: the content areas where dyslexia-friendly fonts apply
- Font preview: a preview of the dyslexia-friendly rendering
- Available on web
- Event logging (action performed)
- Audit logging of dyslexia-friendly font settings

**Super Admin User Journey:**
1. As a Super Admin, open the dyslexia-friendly font settings.
2. Enable dyslexia-friendly fonts and select the font family.
3. Set the typography defaults (letter spacing, line height, word spacing).
4. Choose the content areas where the fonts apply and preview the rendering.
5. Save and verify a learner with the setting enabled sees the dyslexia-friendly rendering.

**Rules & Edge Cases:**
- Dyslexia-friendly fonts apply only when enabled; when disabled, the standard font is used.
- The selected font must be a supported dyslexia-friendly family; unsupported fonts are rejected.
- Typography values are bounded; out-of-range values are rejected with a validation message.
- The setting is a platform default; a learner can enable or disable it personally.
- Dyslexia-friendly fonts do not alter content, only rendering.
- A content area not in scope renders with the standard font even when the setting is on.
- Settings changes are audit-logged with the actor and timestamp.

### 2.4 Color-Blind Friendly Design Options
**What it does:** The Super Admin configures color-blind friendly design options so learners with color vision deficiencies can distinguish UI elements, charts, and indicators.

**Sub-features:**
- Color-blind mode enablement: color-blind friendly palettes toggled on or off
- Palette selection: the color-blind safe palette (deuteranopia, protanopia, tritanopia, achromatopsia)
- Chart color scheme: the color scheme used for charts and data visualizations
- Indicator patterns: non-color indicators (icons, patterns, labels) for status
- Palette preview: a preview of the color-blind friendly rendering
- Available on web
- Event logging (action performed)
- Audit logging of color-blind friendly design options

**Super Admin User Journey:**
1. As a Super Admin, open the color-blind friendly design options.
2. Enable color-blind modes and select the palette per deficiency type.
3. Set the chart color scheme and enable non-color indicators.
4. Preview the rendering and save.
5. Verify a learner with the setting enabled sees distinguishable UI elements and charts.

**Rules & Edge Cases:**
- Color-blind modes apply only when enabled; when disabled, the standard palette is used.
- Each deficiency type maps to a distinct palette; a palette must be selected per enabled type.
- Non-color indicators (icons, patterns, labels) are required for status when a color-blind mode is on.
- Chart colors are drawn from the selected palette; no out-of-palette colors are used.
- The setting is a platform default; a learner can select their deficiency type personally.
- A color-blind mode does not alter content, only color rendering.
- Settings changes are audit-logged with the actor and timestamp.

### 2.5 Keyboard Navigation Support
**What it does:** The Super Admin configures keyboard navigation support so learners who cannot use a pointer can operate the platform entirely by keyboard.

**Sub-features:**
- Keyboard navigation enablement: full keyboard operability toggled on or off
- Focus indicator: the visible focus indicator style for keyboard navigation
- Skip links: skip-to-content links for keyboard users
- Shortcut catalog: the keyboard shortcuts available per screen
- Focus order: the logical tab order across interactive elements
- Available on web
- Event logging (action performed)
- Audit logging of keyboard navigation support

**Super Admin User Journey:**
1. As a Super Admin, open the keyboard navigation support settings.
2. Enable full keyboard operability and set the focus indicator style.
3. Configure skip links and review the shortcut catalog per screen.
4. Verify the logical tab order across a representative screen.
5. Save and verify a learner can complete a core task using only the keyboard.

**Rules & Edge Cases:**
- Keyboard navigation applies only when enabled; when disabled, pointer-first behavior is used.
- Every interactive element must be reachable by keyboard; unreachable elements are flagged.
- The focus indicator must be visible; a hidden or invisible focus indicator is rejected.
- Skip links must target valid landmarks; a broken skip link target is flagged.
- Keyboard shortcuts must not conflict with browser or OS reserved shortcuts.
- The tab order must follow the visual reading order; out-of-order focus is flagged.
- A core task (e.g., completing a lesson) must be completable by keyboard alone.
- Settings changes are audit-logged with the actor and timestamp.
