Menu

Tailwind CSS Ring Offset Color

The ring offset color controls the color of space created between the element's ring and its actual border or box. With Tailwind, you can easily adjust these colors, apply conditional states, and even customize them using arbitrary values or by extending the Tailwind theme.

ClassPropertiesExample
ring-offset-inherit--tw-ring-offset-color: inherit; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-inherit"></div>
ring-offset-current--tw-ring-offset-color: currentColor; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-current"></div>
ring-offset-transparent--tw-ring-offset-color: transparent; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-transparent"></div>
ring-offset-black--tw-ring-offset-color: #000; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-black"></div>
ring-offset-white--tw-ring-offset-color: #fff; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-white"></div>
ring-offset-slate-50--tw-ring-offset-color: #f8fafc; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-slate-50"></div>
ring-offset-slate-100--tw-ring-offset-color: #f1f5f9; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-slate-100"></div>
ring-offset-slate-200--tw-ring-offset-color: #e2e8f0; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-slate-200"></div>
ring-offset-slate-300--tw-ring-offset-color: #cbd5e1; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-slate-300"></div>
ring-offset-slate-400--tw-ring-offset-color: #94a3b8; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-slate-400"></div>
ring-offset-slate-500--tw-ring-offset-color: #64748b; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-slate-500"></div>
ring-offset-slate-600--tw-ring-offset-color: #475569; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-slate-600"></div>
ring-offset-slate-700--tw-ring-offset-color: #334155; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-slate-700"></div>
ring-offset-slate-800--tw-ring-offset-color: #1e293b; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-slate-800"></div>
ring-offset-slate-900--tw-ring-offset-color: #0f172a; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-slate-900"></div>
ring-offset-slate-950--tw-ring-offset-color: #020617; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-slate-950"></div>
ring-offset-gray-50--tw-ring-offset-color: #f9fafb; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-gray-50"></div>
ring-offset-gray-100--tw-ring-offset-color: #f3f4f6; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-gray-100"></div>
ring-offset-gray-200--tw-ring-offset-color: #e5e7eb; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-gray-200"></div>
ring-offset-gray-300--tw-ring-offset-color: #d1d5db; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-gray-300"></div>
ring-offset-gray-400--tw-ring-offset-color: #9ca3af; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-gray-400"></div>
ring-offset-gray-500--tw-ring-offset-color: #6b7280; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-gray-500"></div>
ring-offset-gray-600--tw-ring-offset-color: #4b5563; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-gray-600"></div>
ring-offset-gray-700--tw-ring-offset-color: #374151; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-gray-700"></div>
ring-offset-gray-800--tw-ring-offset-color: #1f2937; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-gray-800"></div>
ring-offset-gray-900--tw-ring-offset-color: #111827; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-gray-900"></div>
ring-offset-gray-950--tw-ring-offset-color: #030712; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-gray-950"></div>
ring-offset-zinc-50--tw-ring-offset-color: #fafafa; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-zinc-50"></div>
ring-offset-zinc-100--tw-ring-offset-color: #f4f4f5; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-zinc-100"></div>
ring-offset-zinc-200--tw-ring-offset-color: #e4e4e7; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-zinc-200"></div>
ring-offset-zinc-300--tw-ring-offset-color: #d4d4d8; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-zinc-300"></div>
ring-offset-zinc-400--tw-ring-offset-color: #a1a1aa; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-zinc-400"></div>
ring-offset-zinc-500--tw-ring-offset-color: #71717a; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-zinc-500"></div>
ring-offset-zinc-600--tw-ring-offset-color: #52525b; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-zinc-600"></div>
ring-offset-zinc-700--tw-ring-offset-color: #3f3f46; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-zinc-700"></div>
ring-offset-zinc-800--tw-ring-offset-color: #27272a; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-zinc-800"></div>
ring-offset-zinc-900--tw-ring-offset-color: #18181b; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-zinc-900"></div>
ring-offset-zinc-950--tw-ring-offset-color: #09090b; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-zinc-950"></div>
ring-offset-neutral-50--tw-ring-offset-color: #fafafa; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-neutral-50"></div>
ring-offset-neutral-100--tw-ring-offset-color: #f5f5f5; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-neutral-100"></div>
ring-offset-neutral-200--tw-ring-offset-color: #e5e5e5; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-neutral-200"></div>
ring-offset-neutral-300--tw-ring-offset-color: #d4d4d4; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-neutral-300"></div>
ring-offset-neutral-400--tw-ring-offset-color: #a3a3a3; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-neutral-400"></div>
ring-offset-neutral-500--tw-ring-offset-color: #737373; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-neutral-500"></div>
ring-offset-neutral-600--tw-ring-offset-color: #525252; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-neutral-600"></div>
ring-offset-neutral-700--tw-ring-offset-color: #404040; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-neutral-700"></div>
ring-offset-neutral-800--tw-ring-offset-color: #262626; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-neutral-800"></div>
ring-offset-neutral-900--tw-ring-offset-color: #171717; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-neutral-900"></div>
ring-offset-neutral-950--tw-ring-offset-color: #0a0a0a; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-neutral-950"></div>
ring-offset-stone-50--tw-ring-offset-color: #fafaf9; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-stone-50"></div>
ring-offset-stone-100--tw-ring-offset-color: #f5f5f4; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-stone-100"></div>
ring-offset-stone-200--tw-ring-offset-color: #e7e5e4; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-stone-200"></div>
ring-offset-stone-300--tw-ring-offset-color: #d6d3d1; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-stone-300"></div>
ring-offset-stone-400--tw-ring-offset-color: #a8a29e; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-stone-400"></div>
ring-offset-stone-500--tw-ring-offset-color: #78716c; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-stone-500"></div>
ring-offset-stone-600--tw-ring-offset-color: #57534e; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-stone-600"></div>
ring-offset-stone-700--tw-ring-offset-color: #44403c; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-stone-700"></div>
ring-offset-stone-800--tw-ring-offset-color: #292524; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-stone-800"></div>
ring-offset-stone-900--tw-ring-offset-color: #1c1917; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-stone-900"></div>
ring-offset-stone-950--tw-ring-offset-color: #0c0a09; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-stone-950"></div>
ring-offset-red-50--tw-ring-offset-color: #fef2f2; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-red-50"></div>
ring-offset-red-100--tw-ring-offset-color: #fee2e2; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-red-100"></div>
ring-offset-red-200--tw-ring-offset-color: #fecaca; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-red-200"></div>
ring-offset-red-300--tw-ring-offset-color: #fca5a5; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-red-300"></div>
ring-offset-red-400--tw-ring-offset-color: #f87171; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-red-400"></div>
ring-offset-red-500--tw-ring-offset-color: #ef4444; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-red-500"></div>
ring-offset-red-600--tw-ring-offset-color: #dc2626; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-red-600"></div>
ring-offset-red-700--tw-ring-offset-color: #b91c1c; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-red-700"></div>
ring-offset-red-800--tw-ring-offset-color: #991b1b; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-red-800"></div>
ring-offset-red-900--tw-ring-offset-color: #7f1d1d; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-red-900"></div>
ring-offset-red-950--tw-ring-offset-color: #450a0a; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-red-950"></div>
ring-offset-orange-50--tw-ring-offset-color: #fff7ed; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-orange-50"></div>
ring-offset-orange-100--tw-ring-offset-color: #ffedd5; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-orange-100"></div>
ring-offset-orange-200--tw-ring-offset-color: #fed7aa; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-orange-200"></div>
ring-offset-orange-300--tw-ring-offset-color: #fdba74; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-orange-300"></div>
ring-offset-orange-400--tw-ring-offset-color: #fb923c; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-orange-400"></div>
ring-offset-orange-500--tw-ring-offset-color: #f97316; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-orange-500"></div>
ring-offset-orange-600--tw-ring-offset-color: #ea580c; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-orange-600"></div>
ring-offset-orange-700--tw-ring-offset-color: #c2410c; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-orange-700"></div>
ring-offset-orange-800--tw-ring-offset-color: #9a3412; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-orange-800"></div>
ring-offset-orange-900--tw-ring-offset-color: #7c2d12; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-orange-900"></div>
ring-offset-orange-950--tw-ring-offset-color: #431407; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-orange-950"></div>
ring-offset-amber-50--tw-ring-offset-color: #fffbeb; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-amber-50"></div>
ring-offset-amber-100--tw-ring-offset-color: #fef3c7; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-amber-100"></div>
ring-offset-amber-200--tw-ring-offset-color: #fde68a; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-amber-200"></div>
ring-offset-amber-300--tw-ring-offset-color: #fcd34d; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-amber-300"></div>
ring-offset-amber-400--tw-ring-offset-color: #fbbf24; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-amber-400"></div>
ring-offset-amber-500--tw-ring-offset-color: #f59e0b; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-amber-500"></div>
ring-offset-amber-600--tw-ring-offset-color: #d97706; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-amber-600"></div>
ring-offset-amber-700--tw-ring-offset-color: #b45309; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-amber-700"></div>
ring-offset-amber-800--tw-ring-offset-color: #92400e; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-amber-800"></div>
ring-offset-amber-900--tw-ring-offset-color: #78350f; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-amber-900"></div>
ring-offset-amber-950--tw-ring-offset-color: #451a03; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-amber-950"></div>
ring-offset-yellow-50--tw-ring-offset-color: #fefce8; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-yellow-50"></div>
ring-offset-yellow-100--tw-ring-offset-color: #fef9c3; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-yellow-100"></div>
ring-offset-yellow-200--tw-ring-offset-color: #fef08a; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-yellow-200"></div>
ring-offset-yellow-300--tw-ring-offset-color: #fde047; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-yellow-300"></div>
ring-offset-yellow-400--tw-ring-offset-color: #facc15; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-yellow-400"></div>
ring-offset-yellow-500--tw-ring-offset-color: #eab308; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-yellow-500"></div>
ring-offset-yellow-600--tw-ring-offset-color: #ca8a04; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-yellow-600"></div>
ring-offset-yellow-700--tw-ring-offset-color: #a16207; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-yellow-700"></div>
ring-offset-yellow-800--tw-ring-offset-color: #854d0e; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-yellow-800"></div>
ring-offset-yellow-900--tw-ring-offset-color: #713f12; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-yellow-900"></div>
ring-offset-yellow-950--tw-ring-offset-color: #422006; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-yellow-950"></div>
ring-offset-lime-50--tw-ring-offset-color: #f7fee7; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-lime-50"></div>
ring-offset-lime-100--tw-ring-offset-color: #ecfccb; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-lime-100"></div>
ring-offset-lime-200--tw-ring-offset-color: #d9f99d; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-lime-200"></div>
ring-offset-lime-300--tw-ring-offset-color: #bef264; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-lime-300"></div>
ring-offset-lime-400--tw-ring-offset-color: #a3e635; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-lime-400"></div>
ring-offset-lime-500--tw-ring-offset-color: #84cc16; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-lime-500"></div>
ring-offset-lime-600--tw-ring-offset-color: #65a30d; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-lime-600"></div>
ring-offset-lime-700--tw-ring-offset-color: #4d7c0f; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-lime-700"></div>
ring-offset-lime-800--tw-ring-offset-color: #3f6212; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-lime-800"></div>
ring-offset-lime-900--tw-ring-offset-color: #365314; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-lime-900"></div>
ring-offset-lime-950--tw-ring-offset-color: #1a2e05; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-lime-950"></div>
ring-offset-green-50--tw-ring-offset-color: #f0fdf4; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-green-50"></div>
ring-offset-green-100--tw-ring-offset-color: #dcfce7; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-green-100"></div>
ring-offset-green-200--tw-ring-offset-color: #bbf7d0; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-green-200"></div>
ring-offset-green-300--tw-ring-offset-color: #86efac; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-green-300"></div>
ring-offset-green-400--tw-ring-offset-color: #4ade80; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-green-400"></div>
ring-offset-green-500--tw-ring-offset-color: #22c55e; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-green-500"></div>
ring-offset-green-600--tw-ring-offset-color: #16a34a; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-green-600"></div>
ring-offset-green-700--tw-ring-offset-color: #15803d; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-green-700"></div>
ring-offset-green-800--tw-ring-offset-color: #166534; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-green-800"></div>
ring-offset-green-900--tw-ring-offset-color: #14532d; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-green-900"></div>
ring-offset-green-950--tw-ring-offset-color: #052e16; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-green-950"></div>
ring-offset-emerald-50--tw-ring-offset-color: #ecfdf5; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-emerald-50"></div>
ring-offset-emerald-100--tw-ring-offset-color: #d1fae5; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-emerald-100"></div>
ring-offset-emerald-200--tw-ring-offset-color: #a7f3d0; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-emerald-200"></div>
ring-offset-emerald-300--tw-ring-offset-color: #6ee7b7; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-emerald-300"></div>
ring-offset-emerald-400--tw-ring-offset-color: #34d399; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-emerald-400"></div>
ring-offset-emerald-500--tw-ring-offset-color: #10b981; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-emerald-500"></div>
ring-offset-emerald-600--tw-ring-offset-color: #059669; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-emerald-600"></div>
ring-offset-emerald-700--tw-ring-offset-color: #047857; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-emerald-700"></div>
ring-offset-emerald-800--tw-ring-offset-color: #065f46; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-emerald-800"></div>
ring-offset-emerald-900--tw-ring-offset-color: #064e3b; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-emerald-900"></div>
ring-offset-emerald-950--tw-ring-offset-color: #022c22; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-emerald-950"></div>
ring-offset-teal-50--tw-ring-offset-color: #f0fdfa; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-teal-50"></div>
ring-offset-teal-100--tw-ring-offset-color: #ccfbf1; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-teal-100"></div>
ring-offset-teal-200--tw-ring-offset-color: #99f6e4; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-teal-200"></div>
ring-offset-teal-300--tw-ring-offset-color: #5eead4; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-teal-300"></div>
ring-offset-teal-400--tw-ring-offset-color: #2dd4bf; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-teal-400"></div>
ring-offset-teal-500--tw-ring-offset-color: #14b8a6; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-teal-500"></div>
ring-offset-teal-600--tw-ring-offset-color: #0d9488; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-teal-600"></div>
ring-offset-teal-700--tw-ring-offset-color: #0f766e; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-teal-700"></div>
ring-offset-teal-800--tw-ring-offset-color: #115e59; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-teal-800"></div>
ring-offset-teal-900--tw-ring-offset-color: #134e4a; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-teal-900"></div>
ring-offset-teal-950--tw-ring-offset-color: #042f2e; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-teal-950"></div>
ring-offset-cyan-50--tw-ring-offset-color: #ecfeff; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-cyan-50"></div>
ring-offset-cyan-100--tw-ring-offset-color: #cffafe; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-cyan-100"></div>
ring-offset-cyan-200--tw-ring-offset-color: #a5f3fc; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-cyan-200"></div>
ring-offset-cyan-300--tw-ring-offset-color: #67e8f9; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-cyan-300"></div>
ring-offset-cyan-400--tw-ring-offset-color: #22d3ee; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-cyan-400"></div>
ring-offset-cyan-500--tw-ring-offset-color: #06b6d4; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-cyan-500"></div>
ring-offset-cyan-600--tw-ring-offset-color: #0891b2; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-cyan-600"></div>
ring-offset-cyan-700--tw-ring-offset-color: #0e7490; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-cyan-700"></div>
ring-offset-cyan-800--tw-ring-offset-color: #155e75; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-cyan-800"></div>
ring-offset-cyan-900--tw-ring-offset-color: #164e63; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-cyan-900"></div>
ring-offset-cyan-950--tw-ring-offset-color: #083344; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-cyan-950"></div>
ring-offset-sky-50--tw-ring-offset-color: #f0f9ff; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-sky-50"></div>
ring-offset-sky-100--tw-ring-offset-color: #e0f2fe; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-sky-100"></div>
ring-offset-sky-200--tw-ring-offset-color: #bae6fd; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-sky-200"></div>
ring-offset-sky-300--tw-ring-offset-color: #7dd3fc; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-sky-300"></div>
ring-offset-sky-400--tw-ring-offset-color: #38bdf8; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-sky-400"></div>
ring-offset-sky-500--tw-ring-offset-color: #0ea5e9; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-sky-500"></div>
ring-offset-sky-600--tw-ring-offset-color: #0284c7; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-sky-600"></div>
ring-offset-sky-700--tw-ring-offset-color: #0369a1; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-sky-700"></div>
ring-offset-sky-800--tw-ring-offset-color: #075985; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-sky-800"></div>
ring-offset-sky-900--tw-ring-offset-color: #0c4a6e; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-sky-900"></div>
ring-offset-sky-950--tw-ring-offset-color: #082f49; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-sky-950"></div>
ring-offset-blue-50--tw-ring-offset-color: #eff6ff; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-blue-50"></div>
ring-offset-blue-100--tw-ring-offset-color: #dbeafe; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-blue-100"></div>
ring-offset-blue-200--tw-ring-offset-color: #bfdbfe; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-blue-200"></div>
ring-offset-blue-300--tw-ring-offset-color: #93c5fd; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-blue-300"></div>
ring-offset-blue-400--tw-ring-offset-color: #60a5fa; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-blue-400"></div>
ring-offset-blue-500--tw-ring-offset-color: #3b82f6; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-blue-500"></div>
ring-offset-blue-600--tw-ring-offset-color: #2563eb; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-blue-600"></div>
ring-offset-blue-700--tw-ring-offset-color: #1d4ed8; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-blue-700"></div>
ring-offset-blue-800--tw-ring-offset-color: #1e40af; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-blue-800"></div>
ring-offset-blue-900--tw-ring-offset-color: #1e3a8a; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-blue-900"></div>
ring-offset-blue-950--tw-ring-offset-color: #172554; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-blue-950"></div>
ring-offset-indigo-50--tw-ring-offset-color: #eef2ff; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-indigo-50"></div>
ring-offset-indigo-100--tw-ring-offset-color: #e0e7ff; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-indigo-100"></div>
ring-offset-indigo-200--tw-ring-offset-color: #c7d2fe; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-indigo-200"></div>
ring-offset-indigo-300--tw-ring-offset-color: #a5b4fc; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-indigo-300"></div>
ring-offset-indigo-400--tw-ring-offset-color: #818cf8; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-indigo-400"></div>
ring-offset-indigo-500--tw-ring-offset-color: #6366f1; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-indigo-500"></div>
ring-offset-indigo-600--tw-ring-offset-color: #4f46e5; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-indigo-600"></div>
ring-offset-indigo-700--tw-ring-offset-color: #4338ca; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-indigo-700"></div>
ring-offset-indigo-800--tw-ring-offset-color: #3730a3; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-indigo-800"></div>
ring-offset-indigo-900--tw-ring-offset-color: #312e81; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-indigo-900"></div>
ring-offset-indigo-950--tw-ring-offset-color: #1e1b4b; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-indigo-950"></div>
ring-offset-violet-50--tw-ring-offset-color: #f5f3ff; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-violet-50"></div>
ring-offset-violet-100--tw-ring-offset-color: #ede9fe; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-violet-100"></div>
ring-offset-violet-200--tw-ring-offset-color: #ddd6fe; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-violet-200"></div>
ring-offset-violet-300--tw-ring-offset-color: #c4b5fd; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-violet-300"></div>
ring-offset-violet-400--tw-ring-offset-color: #a78bfa; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-violet-400"></div>
ring-offset-violet-500--tw-ring-offset-color: #8b5cf6; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-violet-500"></div>
ring-offset-violet-600--tw-ring-offset-color: #7c3aed; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-violet-600"></div>
ring-offset-violet-700--tw-ring-offset-color: #6d28d9; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-violet-700"></div>
ring-offset-violet-800--tw-ring-offset-color: #5b21b6; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-violet-800"></div>
ring-offset-violet-900--tw-ring-offset-color: #4c1d95; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-violet-900"></div>
ring-offset-violet-950--tw-ring-offset-color: #2e1065; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-violet-950"></div>
ring-offset-purple-50--tw-ring-offset-color: #faf5ff; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-purple-50"></div>
ring-offset-purple-100--tw-ring-offset-color: #f3e8ff; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-purple-100"></div>
ring-offset-purple-200--tw-ring-offset-color: #e9d5ff; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-purple-200"></div>
ring-offset-purple-300--tw-ring-offset-color: #d8b4fe; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-purple-300"></div>
ring-offset-purple-400--tw-ring-offset-color: #c084fc; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-purple-400"></div>
ring-offset-purple-500--tw-ring-offset-color: #a855f7; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-purple-500"></div>
ring-offset-purple-600--tw-ring-offset-color: #9333ea; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-purple-600"></div>
ring-offset-purple-700--tw-ring-offset-color: #7e22ce; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-purple-700"></div>
ring-offset-purple-800--tw-ring-offset-color: #6b21a8; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-purple-800"></div>
ring-offset-purple-900--tw-ring-offset-color: #581c87; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-purple-900"></div>
ring-offset-purple-950--tw-ring-offset-color: #3b0764; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-purple-950"></div>
ring-offset-fuchsia-50--tw-ring-offset-color: #fdf4ff; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-fuchsia-50"></div>
ring-offset-fuchsia-100--tw-ring-offset-color: #fae8ff; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-fuchsia-100"></div>
ring-offset-fuchsia-200--tw-ring-offset-color: #f5d0fe; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-fuchsia-200"></div>
ring-offset-fuchsia-300--tw-ring-offset-color: #f0abfc; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-fuchsia-300"></div>
ring-offset-fuchsia-400--tw-ring-offset-color: #e879f9; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-fuchsia-400"></div>
ring-offset-fuchsia-500--tw-ring-offset-color: #d946ef; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-fuchsia-500"></div>
ring-offset-fuchsia-600--tw-ring-offset-color: #c026d3; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-fuchsia-600"></div>
ring-offset-fuchsia-700--tw-ring-offset-color: #a21caf; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-fuchsia-700"></div>
ring-offset-fuchsia-800--tw-ring-offset-color: #86198f; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-fuchsia-800"></div>
ring-offset-fuchsia-900--tw-ring-offset-color: #701a75; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-fuchsia-900"></div>
ring-offset-fuchsia-950--tw-ring-offset-color: #4a044e; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-fuchsia-950"></div>
ring-offset-pink-50--tw-ring-offset-color: #fdf2f8; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-pink-50"></div>
ring-offset-pink-100--tw-ring-offset-color: #fce7f3; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-pink-100"></div>
ring-offset-pink-200--tw-ring-offset-color: #fbcfe8; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-pink-200"></div>
ring-offset-pink-300--tw-ring-offset-color: #f9a8d4; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-pink-300"></div>
ring-offset-pink-400--tw-ring-offset-color: #f472b6; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-pink-400"></div>
ring-offset-pink-500--tw-ring-offset-color: #ec4899; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-pink-500"></div>
ring-offset-pink-600--tw-ring-offset-color: #db2777; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-pink-600"></div>
ring-offset-pink-700--tw-ring-offset-color: #be185d; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-pink-700"></div>
ring-offset-pink-800--tw-ring-offset-color: #9d174d; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-pink-800"></div>
ring-offset-pink-900--tw-ring-offset-color: #831843; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-pink-900"></div>
ring-offset-pink-950--tw-ring-offset-color: #500724; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-pink-950"></div>
ring-offset-rose-50--tw-ring-offset-color: #fff1f2; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-rose-50"></div>
ring-offset-rose-100--tw-ring-offset-color: #ffe4e6; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-rose-100"></div>
ring-offset-rose-200--tw-ring-offset-color: #fecdd3; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-rose-200"></div>
ring-offset-rose-300--tw-ring-offset-color: #fda4af; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-rose-300"></div>
ring-offset-rose-400--tw-ring-offset-color: #fb7185; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-rose-400"></div>
ring-offset-rose-500--tw-ring-offset-color: #f43f5e; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-rose-500"></div>
ring-offset-rose-600--tw-ring-offset-color: #e11d48; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-rose-600"></div>
ring-offset-rose-700--tw-ring-offset-color: #be123c; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-rose-700"></div>
ring-offset-rose-800--tw-ring-offset-color: #9f1239; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-rose-800"></div>
ring-offset-rose-900--tw-ring-offset-color: #881337; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-rose-900"></div>
ring-offset-rose-950--tw-ring-offset-color: #4c0519; box-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color), var(--tw-ring-shadow);<div className="ring-offset-rose-950"></div>

Overview of Ring Offset Color

Adding the Ring Offset Color

The ring-offset-color utilities can be applied to individual elements to define or change the color of the ring's offset.

This is a live editor. Play around with it!
export default function RingOffsetBasic() {
  return (
    <div className="w-screen h-screen flex items-center justify-center bg-gray-100">
      <button className="p-4 border rounded ring-4 ring-blue-500 ring-offset-4 ring-offset-red-500">
        Button with Ring Offset Color
      </button>
    </div>
  );
}

Adjusting the Opacity

To deliver a more nuanced design, Tailwind CSS allows you to modify the opacity of the ring offset color, through opacity modifiers.

This is a live editor. Play around with it!
export default function RingOffsetWithOpacity() {
  return (
    <div className="w-screen h-screen flex items-center justify-center bg-gray-200">
      <button className="p-4 bg-white border rounded ring-4 ring-green-400 ring-offset-4 ring-offset-yellow-400/60">
        Subtle Offset
      </button>
    </div>
  );
}

States and Responsiveness

Modern designs often call for conditional styling, making it crucial to adjust the Ring Offset Color dynamically based on user interaction or viewport size. Tailwind CSS empowers developers to achieve this using states and responsive modifiers.

Hover and Focus States

Interactive states like hover and focus enhance user experience by providing feedback. The ring-offset-color utility seamlessly integrates with state-specific prefixes.

This is a live editor. Play around with it!
export default function DynamicRingOffset() {
  return (
    <div className="w-screen h-screen flex items-center justify-center bg-gray-50">
      <button className="p-4 transition-all border rounded ring-4 ring-purple-500 ring-offset-4 ring-offset-pink-500 focus:ring-offset-green-500 hover:ring-offset-blue-500">
        Hover or Focus Me
      </button>
    </div>
  );
}

Breakpoint Modifiers

Tailwind's responsive approach ensures consistent designs across different screen sizes. Adding ring-offset-color at varying breakpoints(sm, md, etc) enables complex, adaptive layouts.

This is a live editor. Play around with it!
export default function ResponsiveRingOffset() {
  return (
    <div className="w-screen h-screen p-4 flex justify-center items-center bg-gray-50">
      <button className="p-6 border rounded ring-4 ring-red-400 ring-offset-4 sm:ring-offset-yellow-500 md:ring-offset-green-500 lg:ring-offset-blue-500 xl:ring-offset-purple-500">
        Responsive Offset
      </button>
    </div>
  );
}

Custom Ring Offset Color

While Tailwind’s default palette is vast, situations may demand customized colors. Tailwind offers two methods: extending the theme and using arbitrary values.

Extending the Theme

By extending the Tailwind configuration, you can define custom Ring Offset Colors within your theme file (tailwind.config.js), allowing for reusable and semantic values.

This is a live editor. Play around with it!
import tailwindConfig from "./tailwind.config.js";
tailwind.config = tailwindConfig;

export default function ExtendedConfigRingOffset() {
  return (
    <div className="w-screen h-screen flex items-center justify-center bg-gray-100">
      <button className="p-4 border rounded ring-4 ring-gray-600 ring-offset-4 ring-offset-custom-gray">
        Custom Offset
      </button>
    </div>
  );
}

Using Arbitrary Values

Tailwind enables flexibility with arbitrary values, providing direct control over coloring without modifying the theme.

This is a live editor. Play around with it!
export default function ArbitraryValueRingOffset() {
  return (
    <div className="w-screen h-screen flex items-center justify-center bg-gray-50">
      <button className="px-8 py-4 rounded-lg ring-4 ring-orange-600 ring-offset-8 ring-offset-[#ff8800]">
        Custom Hex Offset
      </button>
    </div>
  );
}

Real World Examples

Product Card Grid with Ring Offset Hover Effects

This example shows a grid of product cards with customized ring offset colors on hover, perfect for an e-commerce product listing.

This is a live editor. Play around with it!
export default function ProductGrid() {
  const products = [
    {
      id: 1,
      name: "Premium Leather Backpack",
      price: "$129.99",
      src: "https://images.unsplash.com/photo-1548036328-c9fa89d128fa",
      alt: "Brown leather backpack"
    },
    {
      id: 2,
      name: "Wireless Headphones",
      price: "$199.99",
      src: "https://images.unsplash.com/photo-1505740420928-5e560c06d30e",
      alt: "Black wireless headphones"
    },
    {
      id: 3,
      name: "Smart Watch Pro",
      price: "$299.99",
      src: "https://images.unsplash.com/photo-1546868871-7041f2a55e12",
      alt: "Modern smartwatch"
    },
    {
      id: 4,
      name: "Mechanical Keyboard",
      price: "$159.99",
      src: "https://images.unsplash.com/photo-1587829741301-dc798b83add3",
      alt: "RGB mechanical keyboard"
    },
    {
      id: 5,
      name: "Ultra HD Monitor",
      price: "$449.99",
      src: "https://images.unsplash.com/photo-1527443224154-c4a3942d3acf",
      alt: "Gaming monitor"
    },
    {
      id: 6,
      name: "Gaming Mouse",
      price: "$79.99",
      src: "https://images.unsplash.com/photo-1527864550417-7fd91fc51a46",
      alt: "RGB gaming mouse"
    }
  ];

  return (
    <div className="grid grid-cols-1 md:grid-cols-3 gap-6 p-6">
      {products.map((product) => (
        <div
          key={product.id}
          className="bg-white p-4 rounded-lg shadow-md hover:ring-2 hover:ring-blue-500 hover:ring-offset-4 hover:ring-offset-purple-100 transition-all duration-300"
        >
          <img
            src={product.src}
            alt={product.alt}
            className="w-full h-48 object-cover rounded-md"
          />
          <h3 className="text-lg font-semibold mt-3">{product.name}</h3>
          <p className="text-gray-600">{product.price}</p>
        </div>
      ))}
    </div>
  );
}

Team Member Profile Cards

This example displays team member profiles with ring offset colors that match their department colors.

This is a live editor. Play around with it!
export default function TeamProfiles() {
  const team = [
    {
      id: 1,
      name: "Sarah Johnson",
      role: "Product Manager",
      department: "Management",
      color: "red",
      src: "https://images.unsplash.com/photo-1494790108377-be9c29b29330",
      alt: "Sarah Johnson profile picture"
    },
    {
      id: 2,
      name: "Michael Chen",
      role: "Senior Developer",
      department: "Engineering",
      color: "blue",
      src: "https://images.unsplash.com/photo-1506794778202-cad84cf45f1d",
      alt: "Michael Chen profile picture"
    },
    {
      id: 3,
      name: "Emma Williams",
      role: "UI Designer",
      department: "Design",
      color: "purple",
      src: "https://images.unsplash.com/photo-1534528741775-53994a69daeb",
      alt: "Emma Williams profile picture"
    },
    {
      id: 4,
      name: "James Rodriguez",
      role: "Marketing Lead",
      department: "Marketing",
      color: "green",
      src: "https://images.unsplash.com/photo-1507003211169-0a1dd7228f2d",
      alt: "James Rodriguez profile picture"
    },
    {
      id: 5,
      name: "Lisa Thompson",
      role: "HR Manager",
      department: "Human Resources",
      color: "pink",
      src: "https://images.unsplash.com/photo-1438761681033-6461ffad8d80",
      alt: "Lisa Thompson profile picture"
    },
    {
      id: 6,
      name: "David Kim",
      role: "Financial Analyst",
      department: "Finance",
      color: "yellow",
      src: "https://images.unsplash.com/photo-1500648767791-00dcc994a43e",
      alt: "David Kim profile picture"
    }
  ];

  return (
    <div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8 p-8">
      {team.map((member) => (
        <div
          key={member.id}
          className={`relative group bg-white p-6 rounded-xl shadow-lg 
            ring-2 ring-transparent hover:ring-${member.color}-500 
            ring-offset-4 ring-offset-${member.color}-50 
            transition-all duration-300`}
        >
          <img
            src={member.src}
            alt={member.alt}
            className="w-24 h-24 rounded-full mx-auto mb-4 object-cover"
          />
          <div className="text-center">
            <h3 className="text-xl font-bold">{member.name}</h3>
            <p className="text-gray-600">{member.role}</p>
            <p className={`text-${member.color}-500 font-medium`}>
              {member.department}
            </p>
          </div>
        </div>
      ))}
    </div>
  );
}

Interactive Feature Cards

This example shows feature cards with dynamic ring offset colors based on interaction state.

This is a live editor. Play around with it!
export default function FeatureCards() {
  const features = [
    {
      id: 1,
      title: "Cloud Storage",
      description: "Secure and scalable storage solutions",
      icon: "https://images.unsplash.com/photo-1590859808308-3d2d9c515b1a",
      alt: "Cloud storage icon"
    },
    {
      id: 2,
      title: "Analytics Dashboard",
      description: "Real-time data visualization",
      icon: "https://images.unsplash.com/photo-1551288049-bebda4e38f71",
      alt: "Analytics dashboard icon"
    },
    {
      id: 3,
      title: "API Integration",
      description: "Seamless third-party connections",
      icon: "https://images.unsplash.com/photo-1558494949-ef010cbdcc31",
      alt: "API integration icon"
    },
    {
      id: 4,
      title: "Security Features",
      description: "Enterprise-grade protection",
      icon: "https://images.unsplash.com/photo-1563986768609-322da13575f3",
      alt: "Security features icon"
    },
    {
      id: 5,
      title: "Mobile Support",
      description: "Cross-platform compatibility",
      icon: "https://images.unsplash.com/photo-1512941937669-90a1b58e7e9c",
      alt: "Mobile support icon"
    },
    {
      id: 6,
      title: "24/7 Support",
      description: "Round-the-clock assistance",
      icon: "https://images.unsplash.com/photo-1534536281715-e28d76689b4d",
      alt: "Customer support icon"
    }
  ];

  return (
    <div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6 p-8">
      {features.map((feature) => (
        <div
          key={feature.id}
          className="group relative bg-white p-6 rounded-lg shadow-md
            hover:ring-2 hover:ring-indigo-500
            hover:ring-offset-4 hover:ring-offset-indigo-100
            focus:ring-2 focus:ring-offset-2 focus:ring-offset-teal-100
            active:ring-2 active:ring-offset-2 active:ring-offset-emerald-100
            transition-all duration-300"
        >
          <img
            src={feature.icon}
            alt={feature.alt}
            className="w-12 h-12 object-cover rounded-lg mb-4"
          />
          <h3 className="text-xl font-bold mb-2">{feature.title}</h3>
          <p className="text-gray-600">{feature.description}</p>
        </div>
      ))}
    </div>
  );
}

Social Media Profile Cards

This example demonstrates profile cards with brand-colored ring offset effects.

This is a live editor. Play around with it!
export default function SocialProfiles() {
  const profiles = [
    {
      id: 1,
      platform: "Twitter",
      username: "@techexpert",
      followers: "52K",
      color: "blue",
      src: "https://images.unsplash.com/photo-1611605698335-8b1569810432",
      alt: "Twitter profile"
    },
    {
      id: 2,
      platform: "Instagram",
      username: "@photoart",
      followers: "128K",
      color: "pink",
      src: "https://images.unsplash.com/photo-1611262588024-d12430b98920",
      alt: "Instagram profile"
    },
    {
      id: 3,
      platform: "LinkedIn",
      username: "@professional",
      followers: "35K",
      color: "blue",
      src: "https://images.unsplash.com/photo-1611944212129-29977ae1398c",
      alt: "LinkedIn profile"
    },
    {
      id: 4,
      platform: "YouTube",
      username: "@creator",
      followers: "250K",
      color: "red",
      src: "https://images.unsplash.com/photo-1611162616475-46b635cb6868",
      alt: "YouTube profile"
    },
    {
      id: 5,
      platform: "TikTok",
      username: "@trendsetter",
      followers: "500K",
      color: "purple",
      src: "https://images.unsplash.com/photo-1611605698323-b1e99cfd37ea",
      alt: "TikTok profile"
    },
  ];

  return (
    <div className="flex flex-wrap gap-6 p-8">
      {profiles.map((profile) => (
        <div
          key={profile.id}
          className={`w-64 bg-white rounded-xl p-4 
            hover:ring-2 hover:ring-${profile.color}-500 
            hover:ring-offset-2 hover:ring-offset-${profile.color}-100 
            transition-all duration-300`}
        >
          <img
            src={profile.src}
            alt={profile.alt}
            className="w-full h-32 object-cover rounded-lg mb-4"
          />
          <div className="text-center">
            <h3 className="text-lg font-bold">{profile.platform}</h3>
            <p className="text-gray-600">{profile.username}</p>
            <p className="text-sm text-gray-500">{profile.followers} followers</p>
          </div>
        </div>
      ))}
    </div>
  );
}

Achievement Badge Cards

This example shows achievement badges with level-based ring offset colors.

This is a live editor. Play around with it!
export default function AchievementBadges() {
  const achievements = [
    {
      id: 1,
      title: "Code Master",
      level: "Diamond",
      points: "10,000",
      color: "blue",
      src: "https://images.unsplash.com/photo-1533738363-b7f9aef128ce",
      alt: "Code Master badge"
    },
    {
      id: 2,
      title: "Bug Hunter",
      level: "Gold",
      points: "5,000",
      color: "yellow",
      src: "https://images.unsplash.com/photo-1546410531-bb4caa6b424d",
      alt: "Bug Hunter badge"
    },
    {
      id: 3,
      title: "Design Guru",
      level: "Platinum",
      points: "7,500",
      color: "purple",
      src: "https://images.unsplash.com/photo-1581291518857-4e27b48ff24e",
      alt: "Design Guru badge"
    },
    {
      id: 4,
      title: "Team Player",
      level: "Silver",
      points: "2,500",
      color: "gray",
      src: "https://images.unsplash.com/photo-1582213782179-e0d53f98f2ca",
      alt: "Team Player badge"
    },
    {
      id: 5,
      title: "Innovation Star",
      level: "Ruby",
      points: "15,000",
      color: "red",
      src: "https://images.unsplash.com/photo-1579548122080-c35fd6820ecb",
      alt: "Innovation Star badge"
    },
    {
      id: 6,
      title: "Problem Solver",
      level: "Emerald",
      points: "12,500",
      color: "green",
      src: "https://images.unsplash.com/photo-1580894894513-541e068a3e2b",
      alt: "Problem Solver badge"
    }
  ];

  return (
    <div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8 p-8">
      {achievements.map((achievement) => (
        <div
          key={achievement.id}
          className={`bg-white rounded-lg p-6 text-center
            transform hover:scale-105
            ring-2 ring-${achievement.color}-400
            ring-offset-4 ring-offset-${achievement.color}-50
            transition-all duration-300`}
        >
          <img
            src={achievement.src}
            alt={achievement.alt}
            className="w-20 h-20 mx-auto mb-4 rounded-full object-cover"
          />
          <h3 className="text-xl font-bold mb-2">{achievement.title}</h3>
          <p className={`text-${achievement.color}-600 font-medium`}>
            {achievement.level}
          </p>
          <p className="text-gray-500">{achievement.points} points</p>
        </div>
      ))}
    </div>
  );
}

Customization Examples

Elegant Profile Card with Custom Ring Offset

This example demonstrates a profile card with a custom rose-colored ring offset effect that activates on hover, creating an elegant and interactive user interface.

This is a live editor. Play around with it!
// App.js
import tailwindConfig from "./tailwind.config.js";
tailwind.config = tailwindConfig;
  
export default function ProfileCard() {
  return (
    <div className="flex items-center justify-center min-h-screen bg-gray-100">
      <div className="p-6 bg-white rounded-xl shadow-lg transition-all duration-300 hover:ring-4 hover:ring-rose-500 hover:ring-offset-4 hover:ring-offset-rose-light">
        <img
          src="https://images.unsplash.com/photo-1494790108377-be9c29b29330"
          alt="Profile"
          className="w-32 h-32 rounded-full mx-auto"
        />
        <h2 className="text-2xl font-semibold text-center mt-4">Sarah Anderson</h2>
        <p className="text-gray-600 text-center">Senior Developer</p>
        <button className="mt-4 w-full bg-rose-500 text-white py-2 rounded-lg">
          Connect
        </button>
      </div>
    </div>
  )
}

Interactive Navigation Button with Custom Offset

This example shows a modern navigation button with a custom emerald ring offset that creates a distinctive focus state.

This is a live editor. Play around with it!
// App.js
import tailwindConfig from "./tailwind.config.js";
tailwind.config = tailwindConfig;

export default function NavigationButton() {
  return (
    <nav className="flex items-center justify-center min-h-screen bg-emerald-50">
      <button className="group relative px-8 py-4 bg-emerald-600 text-white rounded-lg 
        transition-all duration-300 focus:outline-none focus:ring-4 
        focus:ring-emerald-500 focus:ring-offset-4 focus:ring-offset-emerald-fade">
        <div className="flex items-center space-x-3">
          <img
            src="https://images.unsplash.com/photo-1534330207526-8e81f10ec6fc"
            alt="Icon"
            className="w-6 h-6"
          />
          <span className="font-medium">Dashboard</span>
        </div>
        <div className="absolute -bottom-2 left-0 w-full h-1 bg-emerald-800 
          transform scale-x-0 group-hover:scale-x-100 transition-transform duration-300">
        </div>
      </button>
    </nav>
  )
}

Feature Card with Gradient Ring Offset

This example showcases a feature card with a custom gradient ring offset effect that combines multiple colors for a unique visual experience.

This is a live editor. Play around with it!
// App.js
import tailwindConfig from "./tailwind.config.js";
tailwind.config = tailwindConfig;

export default function FeatureCard() {
  return (
    <div className="flex items-center justify-center min-h-screen bg-gradient-to-br from-indigo-100 to-purple-100">
      <div className="max-w-md h-80 w-80 p-8 bg-white rounded-2xl shadow-xl
        transition-all duration-500 hover:ring-4 hover:ring-indigo-500 
        hover:ring-offset-8 hover:ring-offset-indigo-gradient">
        <div className="relative">
          <img
            src="https://images.unsplash.com/photo-1618005182384-a83a8bd57fbe"
            alt="Feature"
            className="w-full h-24 object-cover rounded-xl"
          />
          <div className="absolute -top-4 -right-4 bg-indigo-500 text-white 
            p-3 rounded-full shadow-lg">
            <svg className="w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24">
              <path strokeLinecap="round" strokeLinejoin="round" strokeWidth="2" 
                d="M13 10V3L4 14h7v7l9-11h-7z" />
            </svg>
          </div>
        </div>
        <h3 className="mt-6 text-2xl font-bold text-gray-900">Premium Features</h3>
        <p className="mt-4 text-gray-600 leading-relaxed">
          Unlock advanced capabilities with our premium features, designed to enhance
          your productivity and streamline your workflow.
        </p>
      </div>
    </div>
  )
}

Best Practices

Maintain Design Consistency

When applying Ring Offset Color in your project, it's critical to adopt a consistent color scheme to provide users with the best visual experience. Consistency not only enhances aesthetics but also ensures that interactive components such as buttons and focusable inputs are easily recognizable across your interface. For instance, reserving a specific palette for hover, focus, and active states can simplify navigation for users and reduce cognitive load.

To achieve this, centralize your colors within the tailwind.config.js file by extending the ringOffsetColor property. This allows your team to reuse similar styles for various elements with minimal effort. Moreover, document these styles in your design system guides to align developers, designers, and accessibility auditors on a unified approach.

Leverage Utility Combinations

Tailwind CSS encourages the use of utility-first classes to combine multiple properties for faster development without compromising clarity. To elevate Ring Offset Color, pair it with utilities like transition, shadow, and rounded for compelling effects.

For example, adding custom hover effects to buttons with hover:ring-offset-*, alongside smooth transitions, can create a more interactive experience.

Accessibility Considerations

Enhance Readability and Navigability

Color plays an instrumental role in guiding users through your interface. Applying Ring Offset Color can increase the visibility of focusable elements, ensuring users with visual impairments or attention-related challenges can effortlessly navigate. For textual elements, maintain sufficient contrast between the ring offset, background, and focus ring to avoid blending or obscuring content.

By thoughtfully incorporating Ring Offset Color, your designs can emphasize clarity and user-friendly navigation—improving overall accessibility.

Focus on High Contrast

For users with vision difficulties, especially those requiring assistive technologies, contrast is a key determinant of accessibility. Use Ring Offset Color with a focus on contrast ratios exceeding WCAG recommendations (4.5:1 for normal text).

Pair dark backgrounds with light ring offsets or vice versa to create focal points for hover or focus states. High contrast not only enhances usability but also demonstrates inclusion for users across diverse needs.