Design Specification — Verma & Verma Microfinance
| Field | Value |
| Site / Project | https://vermamicrofinance.com/backend/dashboard |
| Analyzed on | 2026-11-02 |
| Analysis mode | Automated code extraction (no AI) |
Overview
This design system was extracted programmatically from the source page. It is built on a light canvas (#FFFFFF), ink text (#000000), a vivid accent (#B4D629). All type is set in 'Source Sans Pro'. Detected font weights: 300, 400, 500, 600, 700, 800. Detected style signatures: soft-ui / layered elevation; technical / mono accents.
Color System
Detected palette (by frequency)
| Hex | RGB | HSL | Count |
#000000 | 0, 0, 0 | 0° 0% 0% | 32 |
#FFFFFF | 255, 255, 255 | 0° 0% 100% | 21 |
#999999 | 153, 153, 153 | 0° 0% 60% | 8 |
#333333 | 51, 51, 51 | 0° 0% 20% | 5 |
#777777 | 119, 119, 119 | 0° 0% 47% | 5 |
#B5D42A | 181, 212, 42 | 71° 67% 50% | 4 |
#B4D629 | 180, 214, 41 | 72° 68% 50% | 3 |
#1A4137 | 26, 65, 55 | 165° 43% 18% | 3 |
#337AB7 | 51, 122, 183 | 208° 56% 46% | 3 |
#EEEEEE | 238, 238, 238 | 0° 0% 93% | 3 |
#CCCCCC | 204, 204, 204 | 0° 0% 80% | 3 |
#66AFE9 | 102, 175, 233 | 207° 75% 66% | 3 |
#286090 | 40, 96, 144 | 208° 57% 36% | 3 |
#204D74 | 32, 77, 116 | 208° 57% 29% | 3 |
#173D33 | 23, 61, 51 | 164° 45% 16% | 2 |
#F5F5F5 | 245, 245, 245 | 0° 0% 96% | 2 |
#555555 | 85, 85, 85 | 0° 0% 33% | 2 |
#2E6DA4 | 46, 109, 164 | 208° 56% 41% | 2 |
#122B40 | 18, 43, 64 | 207° 56% 16% | 2 |
#D2D6DE | 210, 214, 222 | 220° 15% 85% | 2 |
Assigned roles
Roles are taken from the page's own semantic CSS custom properties when present, otherwise inferred from usage frequency + luminance/saturation.
| Token | Hex | RGB | HSL |
--color-primary | #FFFFFF | 255, 255, 255 | 0° 0% 100% |
--color-accent | #B4D629 | 180, 214, 41 | 72° 68% 50% |
--color-background | #FFFFFF | 255, 255, 255 | 0° 0% 100% |
--color-surface | #EEEEEE | 238, 238, 238 | 0° 0% 93% |
--color-text-primary | #000000 | 0, 0, 0 | 0° 0% 0% |
--color-secondary | #000000 | 0, 0, 0 | 0° 0% 0% |
--color-text-secondary | #999999 | 153, 153, 153 | 0° 0% 60% |
--color-border | #333333 | 51, 51, 51 | 0° 0% 20% |
--color-on-primary | #000000 | 0, 0, 0 | 0° 0% 0% |
--color-on-secondary | #FFFFFF | 255, 255, 255 | 0° 0% 100% |
--color-on-accent | #000000 | 0, 0, 0 | 0° 0% 0% |
Surface ramp (derived from detected light neutrals)
| Token | Hex |
--color-surface-container-lowest | #FFFFFF |
--color-surface-container-low | #F7FAF8 |
--color-surface-container | #F7F7F7 |
--color-surface-container-high | #F5F5F5 |
--color-surface-container-highest | #EDF2EE |
Gradients
- `radial-gradient(900px 420px at 10% 0%, rgba(180, 214, 41, 0.22), transparent 55%),
radial-gradient(800px 380px at 100% 100%, rgba(26, 65, 55, 0.18), transparent 52%),
linear-gradient(135deg, #edf2ee 0%, #e5ece7 100%)`
linear-gradient(135deg, #1a4137 0%, #245547 100%)
linear-gradient(135deg, #17392f 0%, #1f4b3f 100%)
Typography
Primary typeface: Source Sans Pro — stack: 'Source Sans Pro'
Font stacks (most used first)
'Source Sans Pro'
"Helvetica Neue",Helvetica,Arial,sans-serif
'Glyphicons Halflings'
inherit
monospace,monospace
Menlo,Monaco,Consolas,"Courier New",monospace
'FontAwesome'
"Ionicons"
'Source Sans Pro','Helvetica Neue',Helvetica,Arial,sans-serif
'Source Sans Pro',sans-serif
Derived type scale
| Token | Size |
| headline-lg | 38px |
| headline-md | 30px |
| title-lg | 22px |
| body-lg | 18px |
| body-md | 16px |
| label-md | 14px |
| label-sm | 12px |
Font sizes (by frequency)
| Size | Count |
| 14px | 8 |
| 12px | 3 |
| 30px | 2 |
| 38px | 1 |
| 17px | 1 |
| 15px | 1 |
| 22px | 1 |
| 20px | 1 |
| 2em | 1 |
| 1em | 1 |
| 10px | 1 |
| 36px | 1 |
| 24px | 1 |
| 18px | 1 |
| 17.5px | 1 |
| 13px | 1 |
| 21px | 1 |
| 35px | 1 |
Weights in use: 300, 400, 500, 600, 700, 800
Line heights (by frequency)
| Value | Count |
| 1.42857143 | 10 |
| 1 | 3 |
| 34px | 2 |
| 0 | 1 |
| 1.1 | 1 |
Letter spacing (by frequency)
| Value | Count |
| 0.8px | 1 |
| 0.9px | 1 |
| 0.2px | 1 |
Spacing
Derived spacing scale
| Token | Value |
| xs | 2px |
| sm | 8px |
| md | 16px |
Raw values (by frequency)
| Value | Count |
| 20px | 2 |
| .2em | 2 |
| 2px | 2 |
| 6px | 2 |
| 5px | 2 |
| 24px | 1 |
| 26px | 1 |
| .67em | 1 |
| 1em | 1 |
| .35em | 1 |
| 10px | 1 |
| 9.5px | 1 |
| 4px | 1 |
| 3px | 1 |
| 1px | 1 |
| 8px | 1 |
Borders & Radius
Derived radius tokens
| Token | Value |
| sm | 1px |
| md | 12px |
| lg | 18px |
Raw values (resolved, by frequency)
| Radius | Count |
4px | 6 |
0 | 3 |
12px | 2 |
3px | 2 |
18px | 1 |
14px | 1 |
.25em | 1 |
6px | 1 |
5px 5px 0 0 | 1 |
1px | 1 |
Shadows
Derived elevation
| Token | Value |
| sm | inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6) |
| md | 0 18px 48px rgba(20, 45, 38, 0.14) |
| lg | 0 0 0 3px rgba(180, 214, 41, 0.22) |
All detected shadows
inset 0 3px 5px rgba(0,0,0,0.125)
inset 0 -1px 0 rgba(0,0,0,.25)
inset 0 1px 1px rgba(0,0,0,.075)
inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)
inset 0 3px 5px rgba(0,0,0,.125)
inset 0 1px 2px rgba(0,0,0,.1)
0 5px 10px rgba(0,0,0,.2)
inset 0 0 100px rgba(0,0,0,0.2)
0 18px 48px rgba(20, 45, 38, 0.14)
0 0 0 3px rgba(180, 214, 41, 0.22)
Layout
Container max-width: 768px
Breakpoints
Animation & Motion
Transitions
border-color .2s, box-shadow .2s, background .2s
transform .16s ease, box-shadow .16s ease, background .16s ease
border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s
border-color ease-in-out .15s,box-shadow ease-in-out .15s
opacity .15s linear
all linear .3s
Easing curves
Keyframes
@keyframes progress-bar-stripes { from{background-position:40px 0}to{background-position:0 0} }
@keyframes fa-spin { 0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)} }
@keyframes flipInX { 0%{transform:perspective(400px) rotate3d(1, 0, 0, 90deg);transition-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotate3d(1, 0, 0, -20deg);transition-timing-function:ease-in}60%{transform:perspective(400px) rotate3d(1, 0, 0, 10deg);opacity:1}80%{transform:perspective(400px) rotate3d(1, 0, 0, -5deg)}100%{transform:perspective(400px)} }
CTA labels found on page
Source Design Tokens (CSS custom properties)
:root {
--primary: #fff;
}
Do's and Don'ts
Do
- Do reserve the accent
#B4D629 for interactive highlights and key moments — it is used sparingly on the source page.
- Do keep the canvas at
#FFFFFF; surfaces should stay within the detected neutral ramp.
- Do stick to the detected font weight(s): 300, 400, 500, 600, 700, 800.
Don't
- Don't introduce colors outside the detected palette — every hue above was found in the source.
Design Tokens (copy-paste)
:root {
--color-primary: #FFFFFF;
--color-accent: #B4D629;
--color-background: #FFFFFF;
--color-surface: #EEEEEE;
--color-text-primary: #000000;
--color-secondary: #000000;
--color-text-secondary: #999999;
--color-border: #333333;
--color-on-primary: #000000;
--color-on-secondary: #FFFFFF;
--color-on-accent: #000000;
--color-surface-container-lowest: #FFFFFF;
--color-surface-container-low: #F7FAF8;
--color-surface-container: #F7F7F7;
--color-surface-container-high: #F5F5F5;
--color-surface-container-highest: #EDF2EE;
--font-sans: 'Source Sans Pro';
--font-size-headline-lg: 38px;
--font-size-headline-md: 30px;
--font-size-title-lg: 22px;
--font-size-body-lg: 18px;
--font-size-body-md: 16px;
--font-size-label-md: 14px;
--font-size-label-sm: 12px;
--radius-sm: 1px;
--radius-md: 12px;
--radius-lg: 18px;
--shadow-sm: inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);
--shadow-md: 0 18px 48px rgba(20, 45, 38, 0.14);
--shadow-lg: 0 0 0 3px rgba(180, 214, 41, 0.22);
--space-xs: 2px;
--space-sm: 8px;
--space-md: 16px;
--tracking-label: 0.8px;
--container-max: 768px;
}