Discover

agentsure.us vs Lovable

Two design systems side by side, measured from the live sites — colour, type, shape, depth, components, states and responsive behaviour.

agentsure.us: Agentsure — AI Incident Response & Recovery, retained. · Above the fold
agentsure.us
agentsure.us· read 2026-10-14
Lovable: App & Website Builder | Build Software in Minutes | Lovable · Above the fold
Lovable
lovable.dev· read 2026-11-03

Ground and ink

Each side painted in its own measured canvas, ink, muted and primary roles.

agentsure.us

Heading on canvas

Body copy in the measured muted role.

Primary action
21:1 ink on canvas

Lovable

No colour roles measured on this side, so there is no ground to paint. The palette below is still real; re-extracting the site fills this in.

Palette

Named roles first, then every colour measured without one.

agentsure.us

  • canvas#FFFFFF
  • ink#000000
  • muted#1A1A1A
  • hairline#E6E6E6
  • primary#005032
  • on-primary#FFFFFF

5 more, no measured role

Lovable

  • surface#F5F4F0
  • ink#0D0D0D
  • muted#5F5F5D
  • hairline#272725
  • primary#FCFBF8

Type scale

Set at the measured size, weight, tracking and leading. Brand typefaces are not loaded, so the metrics are real and the letterforms are not.

agentsure.us

h1

72px · 500 · shown smaller

display

72px · 400 · shown smaller

h2

48px · 500 · shown smaller

display

48px · 400 · shown smaller

h3

28px · 500

heading

24px · 500

heading

22px · 500

Lovable

h1

80px · 700 · shown smaller

h2

48px · 600 · shown smaller

display

48px · 480 · shown smaller

h1

48px · 480 · shown smaller

body

40px · 500 · shown smaller

heading

36px · 600

h2

36px · 480

Corners

Drawn at the measured radii.

agentsure.us

6px

pill

0px

0px

8px

Lovable

0px

8px

pill

pill

16px

6px

Spacing

One shared scale across both sides, so the bars are directly comparable.

agentsure.us

4
8
12
16
20
24
28
32

Lovable

4
8
12
16
20
24
28
32

Depth

Shadows cast on each side's own ground.

agentsure.us

No shadows measured.

Lovable

sm

md

lg

xl

Buttons

Rendered from the measured computed styles.

agentsure.us

primaryprimary-lgoutlineoutline-sm

Lovable

texttext-2iconicon-lg

The measured values behind the panels above.

agentsure.usLovable

At a glance

GroundLight—
CornersPillPill
Display size — these differ72px80px
Spacing base4px4px
Accent colours — these differ40
Type families — these differ21
Ink on canvas21.0:1—
Components — these differ1014

Colour roles

primary — these differ#005032#FCFBF8
link#0000EE—
canvas#FFFFFF—
surface—#F5F4F0
ink — these differ#000000#0D0D0D
body — these differ#0D1016#1C1C1C
muted — these differ#1A1A1A#5F5F5D
hairline — these differ#E6E6E6#272725
on-primary#FFFFFF—

Full palette

Every colour each extraction kept, including the ones with no measured role.

All colours — these differ#005032#0000EE#E68846#C0392B#C9BBA3#FFFFFF#000000#0D1016#1A1A1A#68655E#E6E6E6#F2E9DA#888888#FCFBF8#F5F4F0#1C1C1C#0D0D0D#5F5F5D#C5C1B9#272725
Semantic——

Typography

Families — these differInter TightJetBrains MonoCamera Plain Variable
h1 — these differ72px · 500 · 74.88px · -1.8px · Inter Tight30px · 480 · 45px · 0px · Camera Plain Variable
h2 — these differ48px · 500 · 51.84px · -1.06px · Inter Tight48px · 600 · 52.8px · -1.92px · Camera Plain Variable
display — these differ48px · 400 · 51.84px · -1.06px · Inter Tight48px · 480 · 52.8px · -1.44px · Camera Plain Variable
h3 — these differ28px · 500 · 33.6px · -0.5px · Inter Tight18px · 480 · 27px · 0px · Camera Plain Variable
heading — these differ22px · 500 · 26.84px · -0.26px · Inter Tight14px · 480 · 21px · 0px · Camera Plain Variable
body — these differ15.5px · 400 · 24.8px · 0px · Inter Tight14px · 400 · 24px · 0px · Camera Plain Variable
quote — these differ15.5px · 400 · 23.25px · 0px · Inter Tight24px · 480 · 32px · -0.48px · Camera Plain Variable
input14.5px · 400 · 20.3px · 0px · Inter Tight—
button — these differ14px · 500 · 14px · 0px · Inter Tight15px · 400 · 24px · 0px · Camera Plain Variable
list-item — these differ14px · 400 · 21px · 0px · Inter Tight16px · 400 · 24px · 0px · Camera Plain Variable
nav-link — these differ13px · 400 · 20.15px · 0px · Inter Tight14px · 400 · 21px · 0px · Camera Plain Variable
caption — these differ13px · 400 · 20.15px · 0px · JetBrains Mono12px · 400 · 20px · 0px · Camera Plain Variable
code12.5px · 400 · 21.25px · 0px · JetBrains Mono—
h411px · 500 · 18.7px · 1.54px · uppercase · JetBrains Mono—
link — these differ11px · 400 · 18.7px · 0.44px · JetBrains Mono14px · 400 · 21px · 0px · Camera Plain Variable
label — these differ10.5px · 500 · 16.275px · 1.26px · uppercase · JetBrains Mono16px · 700 · 24px · 0px · Camera Plain Variable

Shape and rhythm

Radius — these differ0px6px8px9999px0px6px8px10px12px16px9999px
Spacing — these differ4px8px12px16px20px24px28px32px36px40px48px56px4px8px12px16px20px24px28px32px56px64px80px120px
Border widths1px1px

Depth

Strategy — these differcolor-blockinglayered-micro
Shadows — these differ—rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgb(39, 39, 37) 0px -1px 0px 0px insetrgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(118, 118, 118, 0.1) 0px 0px 0px 1px, rgba(118, 118, 118, 0.07) 0px 1px 1px 0px, rgba(118, 118, 118, 0.05) 0px 2px 5px 0px, rgba(118, 118, 118, 0.1) 0px 4px 24px -8px, rgba(118, 118, 118, 0.08) 0px 4px 34px -5pxrgba(0, 0, 0, 0) 0px 0px 0px 1px, oklch(0.9999 0 107) 0px 0px 0px 1px, rgba(119, 119, 113, 0.16) 0px 0px 0px 2px, rgba(0, 0, 0, 0.04) 0px 0px 24px 6px, rgba(0, 0, 0, 0.04) 0px 2px 1px 0px, rgba(0, 0, 0, 0.04) 0px 2px 1px -0.5px, rgba(0, 0, 0, 0.04) 0px 4px 3px -1.5px, rgba(0, 0, 0, 0.04) 0px 7px 6px -3px, rgba(0, 0, 0, 0.04) 0px 13px 12px -6px, rgba(0, 0, 0, 0.04) 0px 25px 24px -12pxrgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(247, 244, 237, 0) 0px -5.43568e-06px 0px 0px inset
Gradients——
Opacity — these differ—0.500.200.600.400.450.70
Z-index — these differdropdown 50dropdown 55dropdown 60base 1base 2dropdown 10dropdown 50modal 9500modal 9999

Components

Sharedcardnavigationfooterlinklink-2cardnavigationfooterlinklink-2
Only here — these differbutton-primarybutton-primary-lgbutton-outlinebutton-outline-smcard-lgbutton-textbutton-text-2button-iconbutton-icon-lgcard-2navigation-2footer-2badge-textbadge-text-sm
Signature——

Interaction states

Read from each site's own stylesheets. An empty side means they were cross-origin and unreadable.

Measured — these differbutton:hovernav:hoverother:hoverinput:focusother:disabledbutton:focus-visiblebutton:disabledbutton:activeother:disabledbutton:hoverother:focus-visibleother:hovercard:hoverbadge:hoverlink:hoverinput:hovernav:hoverother:focusbadge:focus-visible

Responsive

Breakpoints — these differ375→335px · 1col768→704px · 1col1024→960px · 3col1280→1180px · 3col1440→1180px · 3col375→359px · 2col768→752px · 4col1024→1008px · 6col1280→1264px · 6col1440→1424px · 6col

Themes

Measured on the live site, not derived.

SupportSingle themeSingle theme

How this was measured

Differences here are ours, not the brands'.

Pages read—6
Extracted — these differ2026-10-142026-11-03
Stylesheets — these differPartly blockedReadable
Roles unassigned — these differ50

Measured by DesignMD from the live sites. Compare two others. Generate a DESIGN.md for your own site.