# Mist Blue UI Style Guide A pale blue-grey system that feels lighter and quieter than denim blue while retaining strong UI clarity. Mist Blue is suitable for information-heavy interfaces because it creates separation without strong saturation. This system keeps the interface ADHD-friendly by using layered neutral surfaces, one clear primary colour, one quieter secondary colour and very restrained supporting accents. --- ## 1. Core rules - Use neutral backgrounds and surfaces for most of the page. - Reserve the primary colour for the next important action. - Use the secondary colour for optional or supporting actions. - Use spacing and typography before adding colour. - Keep one main task visible at a time. - Avoid decorative motion and unexpected layout changes. - Never communicate status using colour alone. --- ## 2. Light mode | Token | Value | Purpose | |---|---:|---| | `--page` | `#F6F9FA` | Main page background | | `--page-accent` | `#E7EFF2` | Subtle page depth | | `--surface` | `#FFFFFF` | Cards and dialogs | | `--surface-alt` | `#EDF4F6` | Inputs and secondary regions | | `--surface-strong` | `#DAE6EA` | Selected and elevated elements | | `--text` | `#28363D` | Main text | | `--muted` | `#68777E` | Secondary text | | `--border` | `#C9D7DC` | Borders and dividers | | `--primary` | `#63889A` | Main action and brand colour | | `--primary-hover` | `#496C7D` | Primary hover and active state | | `--secondary` | `#E3E4ED` | Secondary action | | `--secondary-hover` | `#D4D6E3` | Secondary hover state | --- ## 3. Dark mode | Token | Value | Purpose | |---|---:|---| | `--page` | `#010405` | Main dark background | | `--page-accent` | `#061014` | Background depth | | `--surface` | `#0D181D` | Cards and dialogs | | `--surface-alt` | `#15252C` | Inputs and secondary regions | | `--surface-strong` | `#233943` | Selected and elevated elements | | `--text` | `#EFF5F7` | Main text | | `--muted` | `#B7C5CB` | Secondary text | | `--border` | `#38535E` | Borders and dividers | | `--primary` | `#88AEC0` | Main action and brand colour | | `--primary-hover` | `#6E94A7` | Primary hover and active state | | `--secondary` | `#4B4F69` | Secondary action | | `--secondary-hover` | `#606681` | Secondary hover state | --- ## 4. Colour roles ### Primary Use the primary colour for calm primary actions, active navigation and focused progress. Use it on: - the main button - active navigation - selected controls - important links - compact brand marks The primary colour should answer: > What should I do next? ### Secondary Use the secondary colour for soft violet-grey controls and supporting actions. Use it on: - secondary buttons - optional actions - toolbars - supporting cards - inactive navigation The secondary colour should answer: > What else can I do? ### Supporting accents | Role | Light | Dark | |---|---:|---:| | Accent 1 | `#85A3B0` | `#A1C0CD` | | Accent 2 | `#898DAA` | `#A0A4C2` | | Accent 3 | `#C4A36F` | `#D0B17D` | | Success | `#688A73` | `#91B29A` | | Danger | `#A56569` | `#D29195` | Use one supporting accent per component whenever possible. Recommended page balance: - **70%** neutral backgrounds and surfaces - **20%** primary and secondary structure - **10%** supporting accents and status colours --- ## 5. Typography ```css --font-body: "Atkinson Hyperlegible", "Segoe UI", Arial, sans-serif; --font-ui: "Lexend", "Segoe UI", Arial, sans-serif; ``` Use **Atkinson Hyperlegible** for paragraphs, instructions, tables and form help. Use **Lexend** for headings, buttons, navigation and labels. Recommended settings: - body text: `18px` - body line-height: `1.6` - paragraphs: no wider than `70ch` - labels and buttons: `16–18px` - left-aligned body text - concise headings - no long all-caps passages --- ## 6. Layout and spacing Use an 8-pixel spacing rhythm. ```text 4px tiny adjustment 8px closely related elements 16px normal component spacing 24px groups inside a section 32px separation between sections 48px+ major page regions ``` Keep one purpose per card. Prefer spacing and surface changes over thick borders or multiple shadows. --- ## 7. Components ### Primary button ```css background: var(--primary); color: var(--on-primary); ``` Use one obvious primary button per task area. ### Secondary button ```css background: var(--secondary); color: var(--on-secondary); ``` Use for optional or reversible actions. ### Inputs ```css background: var(--surface-alt); border: 1px solid var(--border); color: var(--text); ``` On focus: ```css border-color: var(--primary); outline: 3px solid var(--focus); ``` ### Validation - Place the error beside the affected field. - Explain how to fix the problem. - Preserve the user’s entered data. - Use text or an icon as well as colour. --- ## 8. ADHD-friendly interaction rules - Present one main task at a time. - Reduce optional decisions near the primary action. - Keep related controls close together. - Use consistent button placement. - Avoid unexpected layout movement. - Respect `prefers-reduced-motion`. - Keep notifications short and actionable. - Use progressive disclosure for advanced options. --- ## 9. Accessibility checks Before release: - test keyboard navigation - verify visible focus states - check text and button contrast - test at 200% zoom - connect labels to controls - test light and dark modes separately - use semantic HTML before ARIA --- ## 10. Quick tokens ```css :root { --page: #F6F9FA; --surface: #FFFFFF; --surface-alt: #EDF4F6; --text: #28363D; --muted: #68777E; --border: #C9D7DC; --primary: #63889A; --secondary: #E3E4ED; } html[data-theme="dark"] { --page: #010405; --surface: #0D181D; --surface-alt: #15252C; --text: #EFF5F7; --muted: #B7C5CB; --border: #38535E; --primary: #88AEC0; --secondary: #4B4F69; } ``` --- ## 11. Final rule When the interface begins to feel busy, remove emphasis before adding another colour. Neutral surfaces should make the primary action easy to find without demanding constant attention. --- ## Typography sample card Every login demo includes a sample content card so the heading, subheading and paragraph fonts can be compared in a realistic surface. The demos load the fonts through the Google Fonts CSS API: ```css @import url( "https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible:wght@400;700&family=Lexend:wght@400;500;600;700&display=swap" ); ``` Recommended use: - **Lexend** for the card heading, subheading, labels and badges - **Atkinson Hyperlegible** for the paragraph and longer reading text Example structure: ```html

Typography sample

A calm and readable card heading

A concise subheading demonstrates Lexend at a smaller interface size.

Lorem ipsum dolor sit amet, consectetur adipiscing elit.

```