
*, ::before, ::after {
  box-sizing: border-box;
  border-width: 0;
  border-style: solid;
  border-color: #e5e7eb;
}
html { line-height: 1.5; -webkit-text-size-adjust: 100%; font-family: ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji'; tab-size: 4; }
body { margin: 0; line-height: inherit; }
h1,h2,h3,h4,h5,h6 { font-size: inherit; font-weight: inherit; }
a { color: inherit; text-decoration: inherit; }
b, strong { font-weight: bolder; }
button, input, optgroup, select, textarea { font-family: inherit; font-size: 100%; font-weight: inherit; line-height: inherit; color: inherit; margin: 0; padding: 0; }
button, select { text-transform: none; }
button, [type='button'], [type='reset'], [type='submit'] { -webkit-appearance: button; background-color: transparent; background-image: none; }
:-moz-focusring { outline: auto; }
:-moz-ui-invalid { box-shadow: none; }
progress { vertical-align: baseline; }
::-webkit-inner-spin-button, ::-webkit-outer-spin-button { height: auto; }
[type='search'] { -webkit-appearance: textfield; outline-offset: -2px; }
::-webkit-search-decoration { -webkit-appearance: none; }
::-webkit-file-upload-button { -webkit-appearance: button; font: inherit; }
summary { display: list-item; }
blockquote, dl, dd, h1, h2, h3, h4, h5, h6, hr, figure, p, pre { margin: 0; }
fieldset { margin: 0; padding: 0; }
legend { padding: 0; }
ol, ul, menu { list-style: none; margin: 0; padding: 0; }
textarea { resize: vertical; }
input::placeholder, textarea::placeholder { opacity: 1; color: #9ca3af; }
button, [role='button'] { cursor: pointer; }
:disabled { cursor: default; }
img, svg, video, canvas, audio, iframe, embed, object { display: block; vertical-align: middle; }
img, video { max-width: 100%; height: auto; }
[hidden] { display: none; }

/* Tailwind base custom properties */
:root {
  --tw-gradient-from: #000;
  --tw-gradient-to: rgb(0 0 0 / 0);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-shadow-color: rgb(0 0 0 / 0.1);
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-space-y-reverse: 0;
  --tw-space-x-reverse: 0;
  --tw-divide-y-reverse: 0;
  --tw-divide-x-reverse: 0;
}

/* Space-y / space-x children */
.space-y-1 > * + * { margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.25rem * var(--tw-space-y-reverse)); }
.space-y-2 > * + * { margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.5rem * var(--tw-space-y-reverse)); }
.space-y-3 > * + * { margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.75rem * var(--tw-space-y-reverse)); }
.space-y-4 > * + * { margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(1rem * var(--tw-space-y-reverse)); }
.space-y-5 > * + * { margin-top: calc(1.25rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(1.25rem * var(--tw-space-y-reverse)); }
.space-y-6 > * + * { margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(1.5rem * var(--tw-space-y-reverse)); }
.space-y-8 > * + * { margin-top: calc(2rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(2rem * var(--tw-space-y-reverse)); }
.space-x-2 > * + * { margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse))); margin-right: calc(0.5rem * var(--tw-space-x-reverse)); }
.space-x-3 > * + * { margin-left: calc(0.75rem * calc(1 - var(--tw-space-x-reverse))); margin-right: calc(0.75rem * var(--tw-space-x-reverse)); }

/* Divide */
.divide-y > * + * { border-top-width: 1px; border-bottom-width: 0px; }
.divide-x > * + * { border-left-width: 1px; border-right-width: 0px; }
.divide-gray-100 > * + * { border-color: #f3f4f6; }
.divide-gray-50 > * + * { border-color: #f9fafb; }

/* Last */
.last\:border-0:last-child { border-width: 0; }
.last\:hidden:last-child { display: none; }

/* Group hover for children */
.group:hover .group-hover\:bg-gray-100 { background-color: #f3f4f6; }
.group:hover .group-hover\:bg-white\/10 { background-color: rgb(255 255 255 / 0.1); }
.group:hover .group-hover\:bg-white\/20 { background-color: rgb(255 255 255 / 0.2); }
.group:hover .group-hover\:opacity-100 { opacity: 1; }
.group:hover .group-hover\:scale-105 { transform: scale(1.05); }
.group:hover .group-hover\:scale-110 { transform: scale(1.1); }
.group:hover .group-hover\:shadow-md { box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1); }
.group:hover .group-hover\:text-blue-500 { color: #3b82f6; }
.group:hover .group-hover\:text-blue-600 { color: #2563eb; }
.group:hover .group-hover\:text-blue-700 { color: #1d4ed8; }
.group:hover .group-hover\:text-gray-800 { color: #1f2937; }
.group:hover .group-hover\:text-indigo-700 { color: #4338ca; }
.group:hover .group-hover\:text-emerald-800 { color: #065f46; }

/* Animate */
@keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }
@keyframes ping { 75%, 100% { transform: scale(2); opacity: 0; } }
@keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: .5; } }
@keyframes bounce { 0%, 100% { transform: translateY(-25%); animation-timing-function: cubic-bezier(0.8,0,1,1); } 50% { transform: none; animation-timing-function: cubic-bezier(0,0,0.2,1); } }

.animate-spin { animation: spin 1s linear infinite; }
.animate-ping { animation: ping 1s cubic-bezier(0, 0, 0.2, 1) infinite; }
.animate-pulse { animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite; }
.animate-bounce { animation: bounce 1s infinite; }

/* animate-in (Radix/shadcn) */
@keyframes enter { from { opacity: var(--tw-enter-opacity, 1); transform: translate3d(var(--tw-enter-translate-x, 0), var(--tw-enter-translate-y, 0), 0) scale3d(var(--tw-enter-scale, 1), var(--tw-enter-scale, 1), var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0)); } }
@keyframes exit  { to   { opacity: var(--tw-exit-opacity, 1);  transform: translate3d(var(--tw-exit-translate-x, 0),  var(--tw-exit-translate-y, 0),  0) scale3d(var(--tw-exit-scale, 1),  var(--tw-exit-scale, 1),  var(--tw-exit-scale, 1))  rotate(var(--tw-exit-rotate, 0)); } }
.animate-in  { animation-name: enter; animation-duration: 150ms; }
.animate-out { animation-name: exit;  animation-duration: 150ms; }
.fade-in          { --tw-enter-opacity: 0; }
.fade-out         { --tw-exit-opacity:  0; }
.zoom-in-95       { --tw-enter-scale: .95; }
.zoom-in-90       { --tw-enter-scale: .90; }
.slide-in-from-bottom   { --tw-enter-translate-y: 100%; }
.slide-in-from-bottom-4 { --tw-enter-translate-y: 1rem; }
.slide-in-from-bottom-8 { --tw-enter-translate-y: 2rem; }
.slide-in-from-top-2    { --tw-enter-translate-y: -0.5rem; }
.slide-in-from-top-4    { --tw-enter-translate-y: -1rem; }
.slide-in-from-right-4  { --tw-enter-translate-x: 1rem; }
.slide-in-from-left-4   { --tw-enter-translate-x: -1rem; }
.duration-200  { animation-duration: 200ms; transition-duration: 200ms; }
.duration-300  { animation-duration: 300ms; transition-duration: 300ms; }
.duration-400  { animation-duration: 400ms; }
.duration-500  { animation-duration: 500ms; transition-duration: 500ms; }
.duration-700  { animation-duration: 700ms; transition-duration: 700ms; }

/* Scrollbar hide */
.scrollbar-hide { -ms-overflow-style: none; scrollbar-width: none; }
.scrollbar-hide::-webkit-scrollbar { display: none; }

/* Placeholder colors */
.placeholder\:text-gray-300::placeholder { color: #d1d5db; }
.placeholder-emerald-200\/40::placeholder { color: rgb(167 243 208 / 0.4); }
.placeholder-emerald-200\/50::placeholder { color: rgb(167 243 208 / 0.5); }

/* Marker */
.marker\:font-bold ::marker { font-weight: 700; }
.marker\:text-emerald-500 ::marker { color: #10b981; }

/* Safe area inset support */
@supports(padding: max(0px)) {
  .pb-safe { padding-bottom: env(safe-area-inset-bottom); }
}

.-bottom-10 {
  bottom: -2.5rem;
}
.-left-10 {
  left: -2.5rem;
}
.-mb-16 {
  margin-bottom: -4rem;
}
.-mb-24 {
  margin-bottom: -6rem;
}
.-mb-8 {
  margin-bottom: -2rem;
}
.-ml-1 {
  margin-left: -0.25rem;
}
.-ml-16 {
  margin-left: -4rem;
}
.-ml-24 {
  margin-left: -6rem;
}
.-ml-8 {
  margin-left: -2rem;
}
.-mr-12 {
  margin-right: -3rem;
}
.-mr-16 {
  margin-right: -4rem;
}
.-mr-32 {
  margin-right: -8rem;
}
.-mr-8 {
  margin-right: -2rem;
}
.-mt-12 {
  margin-top: -3rem;
}
.-mt-16 {
  margin-top: -4rem;
}
.-mt-32 {
  margin-top: -8rem;
}
.-mt-8 {
  margin-top: -2rem;
}
.-mx-1 {
  margin-left: -0.25rem; margin-right: -0.25rem;
}
.-right-10 {
  right: -2.5rem;
}
.-right-4 {
  right: -1rem;
}
.-rotate-90 {
  transform: rotate(-90deg);
}
.-top-10 {
  top: -2.5rem;
}
.-translate-x-1\/2 {
  transform: translateX(-50%);
}
.-translate-y-1\/2 {
  transform: translateY(-50%);
}
.-z-0 {
  z-index: 0;
}
.absolute {
  position: absolute;
}
.active\:bg-gray-50\/60:active {
  background-color: rgb(249 250 251 / 0.6);
}
.active\:scale-100:active {
  transform: scale(1);
}
.active\:scale-95:active {
  transform: scale(.95);
}
.backdrop-blur-2xl {
  -webkit-backdrop-filter: blur(40px); backdrop-filter: blur(40px);
}
.backdrop-blur-lg {
  -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px);
}
.backdrop-blur-md {
  -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
}
.backdrop-blur-sm {
  -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);
}
.backdrop-blur-xl {
  -webkit-backdrop-filter: blur(24px); backdrop-filter: blur(24px);
}
.bg-\[\#FBFBFE\] {
  background-color: #FBFBFE;
}
.bg-\[radial-gradient\(ellipse_at_top_right\,rgba\(255\,255\,255\,0\.15\)\,transparent_60\%\)\] {
  background-color: radial-gradient(ellipse_at_top_right,rgba(255,255,255,0.15),transparent_60%);
}
.bg-\[url\(\'https\:\/\/images\.unsplash\.com\/photo-1576091160399-112ba8d25d1d?auto=format&fit=crop&q=80\'\)\] {
  background-image: url('https://images.unsplash.com/photo-1576091160399-112ba8d25d1d?auto=format&fit=crop&q=80'); background-size: cover; background-position: center;
}
.bg-amber-100 {
  background-color: #fef3c7;
}
.bg-amber-400 {
  background-color: #fbbf24;
}
.bg-amber-50 {
  background-color: #fffbeb;
}
.bg-amber-50\/60 {
  background-color: rgb(255 251 235 / 0.6);
}
.bg-amber-500\/20 {
  background-color: rgb(245 158 11 / 0.2);
}
.bg-black\/30 {
  background-color: rgb(0 0 0 / 0.3);
}
.bg-black\/40 {
  background-color: rgb(0 0 0 / 0.4);
}
.bg-black\/60 {
  background-color: rgb(0 0 0 / 0.6);
}
.bg-blue-100 {
  background-color: #dbeafe;
}
.bg-blue-100\/50 {
  background-color: rgb(219 234 254 / 0.5);
}
.bg-blue-200 {
  background-color: #bfdbfe;
}
.bg-blue-50 {
  background-color: #eff6ff;
}
.bg-blue-500 {
  background-color: #3b82f6;
}
.bg-blue-500\/20 {
  background-color: rgb(59 130 246 / 0.2);
}
.bg-blue-600 {
  background-color: #2563eb;
}
.bg-blue-600\/20 {
  background-color: rgb(37 99 235 / 0.2);
}
.bg-center {
  background-position: center;
}
.bg-cover {
  background-size: cover;
}
.bg-emerald-100 {
  background-color: #d1fae5;
}
.bg-emerald-400 {
  background-color: #34d399;
}
.bg-emerald-50 {
  background-color: #ecfdf5;
}
.bg-emerald-50\/50 {
  background-color: rgb(236 253 245 / 0.5);
}
.bg-emerald-500 {
  background-color: #10b981;
}
.bg-emerald-500\/20 {
  background-color: rgb(16 185 129 / 0.2);
}
.bg-emerald-600 {
  background-color: #059669;
}
.bg-emerald-800\/50 {
  background-color: rgb(6 95 70 / 0.5);
}
.bg-gradient-to-br {
  background-image: linear-gradient(to bottom right, var(--tw-gradient-stops));
}
.bg-gradient-to-r {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
}
.bg-gradient-to-t {
  background-image: linear-gradient(to top, var(--tw-gradient-stops));
}
.bg-gray-100 {
  background-color: #f3f4f6;
}
.bg-gray-300 {
  background-color: #d1d5db;
}
.bg-gray-50 {
  background-color: #f9fafb;
}
.bg-gray-50\/50 {
  background-color: rgb(249 250 251 / 0.5);
}
.bg-gray-900 {
  background-color: #111827;
}
.bg-green-100 {
  background-color: #dcfce7;
}
.bg-green-50 {
  background-color: #f0fdf4;
}
.bg-green-50\/50 {
  background-color: rgb(240 253 244 / 0.5);
}
.bg-green-500 {
  background-color: #22c55e;
}
.bg-green-500\/10 {
  background-color: rgb(34 197 94 / 0.1);
}
.bg-indigo-100 {
  background-color: #e0e7ff;
}
.bg-indigo-100\/50 {
  background-color: rgb(224 231 255 / 0.5);
}
.bg-indigo-50 {
  background-color: #eef2ff;
}
.bg-indigo-50\/40 {
  background-color: rgb(238 242 255 / 0.4);
}
.bg-indigo-600\/20 {
  background-color: rgb(79 70 229 / 0.2);
}
.bg-orange-100 {
  background-color: #ffedd5;
}
.bg-orange-50 {
  background-color: #fff7ed;
}
.bg-purple-100 {
  background-color: #f3e8ff;
}
.bg-purple-600 {
  background-color: #9333ea;
}
.bg-red-100 {
  background-color: #fee2e2;
}
.bg-red-400 {
  background-color: #f87171;
}
.bg-red-50 {
  background-color: #fef2f2;
}
.bg-red-50\/50 {
  background-color: rgb(254 242 242 / 0.5);
}
.bg-red-500 {
  background-color: #ef4444;
}
.bg-red-600 {
  background-color: #dc2626;
}
.bg-slate-100 {
  background-color: #f1f5f9;
}
.bg-slate-200 {
  background-color: #e2e8f0;
}
.bg-slate-50 {
  background-color: #f8fafc;
}
.bg-slate-50\/50 {
  background-color: rgb(248 250 252 / 0.5);
}
.bg-slate-900 {
  background-color: #0f172a;
}
.bg-slate-900\/60 {
  background-color: rgb(15 23 42 / 0.6);
}
.bg-slate-900\/90 {
  background-color: rgb(15 23 42 / 0.9);
}
.bg-slate-950 {
  background-color: #020617;
}
.bg-transparent {
  background-color: transparent;
}
.bg-white {
  background-color: #fff;
}
.bg-white\/10 {
  background-color: rgb(255 255 255 / 0.1);
}
.bg-white\/20 {
  background-color: rgb(255 255 255 / 0.2);
}
.bg-white\/40 {
  background-color: rgb(255 255 255 / 0.4);
}
.bg-white\/5 {
  background-color: rgb(255 255 255 / 0.05);
}
.bg-white\/50 {
  background-color: rgb(255 255 255 / 0.5);
}
.bg-white\/60 {
  background-color: rgb(255 255 255 / 0.6);
}
.bg-white\/80 {
  background-color: rgb(255 255 255 / 0.8);
}
.bg-white\/90 {
  background-color: rgb(255 255 255 / 0.9);
}
.bg-white\/95 {
  background-color: rgb(255 255 255 / 0.95);
}
.bg-yellow-100 {
  background-color: #fef9c3;
}
.bg-yellow-400 {
  background-color: #facc15;
}
.bg-yellow-500 {
  background-color: #eab308;
}
.block {
  display: block;
}
.blur-2xl {
  filter: blur(40px);
}
.blur-3xl {
  filter: blur(64px);
}
.border {
  border-width: 1px; border-style: solid;
}
.border-2 {
  border-width: 2px; border-style: solid;
}
.border-4 {
  border-width: 4px; border-style: solid;
}
.border-\[6px\] {
  border-width: 6px;
}
.border-amber-100 {
  border-color: #fef3c7;
}
.border-amber-200 {
  border-color: #fde68a;
}
.border-amber-400\/30 {
  border-color: rgb(251 191 36 / 0.3);
}
.border-b {
  border-bottom-width: 1px; border-bottom-style: solid;
}
.border-blue-100 {
  border-color: #dbeafe;
}
.border-blue-100\/50 {
  border-color: rgb(219 234 254 / 0.5);
}
.border-blue-200 {
  border-color: #bfdbfe;
}
.border-blue-400\/30 {
  border-color: rgb(96 165 250 / 0.3);
}
.border-blue-600 {
  border-color: #2563eb;
}
.border-blue-600\/30 {
  border-color: rgb(37 99 235 / 0.3);
}
.border-blue-900\/30 {
  border-color: rgb(30 58 138 / 0.3);
}
.border-dashed {
  border-style: dashed;
}
.border-emerald-100 {
  border-color: #d1fae5;
}
.border-emerald-100\/50 {
  border-color: rgb(209 250 229 / 0.5);
}
.border-emerald-200 {
  border-color: #a7f3d0;
}
.border-emerald-300\/30 {
  border-color: rgb(110 231 183 / 0.3);
}
.border-emerald-700\/50 {
  border-color: rgb(4 120 87 / 0.5);
}
.border-emerald-900\/30 {
  border-color: rgb(6 78 59 / 0.3);
}
.border-gray-100 {
  border-color: #f3f4f6;
}
.border-gray-100\/50 {
  border-color: rgb(243 244 246 / 0.5);
}
.border-gray-200 {
  border-color: #e5e7eb;
}
.border-gray-200\/50 {
  border-color: rgb(229 231 235 / 0.5);
}
.border-gray-300 {
  border-color: #d1d5db;
}
.border-gray-50 {
  border-color: #f9fafb;
}
.border-gray-800 {
  border-color: #1f2937;
}
.border-green-100 {
  border-color: #dcfce7;
}
.border-green-400\/20 {
  border-color: rgb(74 222 128 / 0.2);
}
.border-green-50 {
  border-color: #f0fdf4;
}
.border-indigo-100 {
  border-color: #e0e7ff;
}
.border-l-2 {
  border-left-width: 2px; border-left-style: solid;
}
.border-none {
  border-style: none; border-width: 0;
}
.border-orange-100 {
  border-color: #ffedd5;
}
.border-purple-200 {
  border-color: #e9d5ff;
}
.border-r {
  border-right-width: 1px; border-right-style: solid;
}
.border-red-100 {
  border-color: #fee2e2;
}
.border-red-200 {
  border-color: #fecaca;
}
.border-slate-100 {
  border-color: #f1f5f9;
}
.border-slate-200 {
  border-color: #e2e8f0;
}
.border-t {
  border-top-width: 1px; border-top-style: solid;
}
.border-t-blue-600 {
  border-top-color: #2563eb;
}
.border-t-blue-900 {
  border-top-color: #1e3a8a;
}
.border-t-emerald-300 {
  border-top-color: #6ee7b7;
}
.border-t-emerald-600 {
  border-top-color: #059669;
}
.border-t-emerald-900 {
  border-top-color: #064e3b;
}
.border-t-gray-500 {
  border-top-color: #6b7280;
}
.border-t-purple-600 {
  border-top-color: #9333ea;
}
.border-t-transparent {
  border-top-color: transparent;
}
.border-t-white {
  border-top-color: #fff;
}
.border-transparent {
  border-color: transparent;
}
.border-white\/10 {
  border-color: rgb(255 255 255 / 0.1);
}
.border-white\/20 {
  border-color: rgb(255 255 255 / 0.2);
}
.border-white\/30 {
  border-color: rgb(255 255 255 / 0.3);
}
.border-white\/5 {
  border-color: rgb(255 255 255 / 0.05);
}
.bottom-0 {
  bottom: 0px;
}
.bottom-\[-10\%\] {
  bottom: -10%;
}
.break-all {
  word-break: break-all;
}
.col-span-1 {
  grid-column: span 1 / span 1;
}
.cursor-default {
  cursor: default;
}
.cursor-help {
  cursor: help;
}
.cursor-pointer {
  cursor: pointer;
}
.cursor-text {
  cursor: text;
}
.disabled\:cursor-not-allowed:disabled {
  cursor: not-allowed;
}
.disabled\:opacity-40:disabled {
  opacity: 0.4;
}
.disabled\:opacity-50:disabled {
  opacity: 0.5;
}
.disabled\:opacity-60:disabled {
  opacity: 0.6;
}
.divide-gray-100 {
  --tw-divide-opacity: 1; border-color: #f3f4f6;
}
.divide-gray-50 {
  --tw-divide-opacity: 1; border-color: #f9fafb;
}
.duration-200 {
  transition-duration: 200ms;
}
.duration-300 {
  transition-duration: 300ms;
}
.duration-400 {
  transition-duration: 400ms;
}
.duration-500 {
  transition-duration: 500ms;
}
.duration-700 {
  transition-duration: 700ms;
}
.ease-out {
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}
.fixed {
  position: fixed;
}
.flex {
  display: flex;
}
.flex-1 {
  flex: 1 1 0%;
}
.flex-col {
  flex-direction: column;
}
.flex-wrap {
  flex-wrap: wrap;
}
.focus-within\:border-blue-300:focus-within {
  border-color: #93c5fd;
}
.focus-within\:border-blue-400:focus-within {
  border-color: #60a5fa;
}
.focus\:border-blue-300:focus {
  border-color: #93c5fd;
}
.focus\:border-blue-400:focus {
  border-color: #60a5fa;
}
.focus\:border-emerald-300:focus {
  border-color: #6ee7b7;
}
.focus\:border-green-400:focus {
  border-color: #4ade80;
}
.focus\:border-purple-300:focus {
  border-color: #d8b4fe;
}
.focus\:border-red-500:focus {
  border-color: #ef4444;
}
.font-black {
  font-weight: 900;
}
.font-bold {
  font-weight: 700;
}
.font-medium {
  font-weight: 500;
}
.font-mono {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;
}
.font-semibold {
  font-weight: 600;
}
.from-blue-50 {
  --tw-gradient-from: #eff6ff; --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to, rgb(255 255 255 / 0));
}
.from-blue-500 {
  --tw-gradient-from: #3b82f6; --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to, rgb(255 255 255 / 0));
}
.from-blue-600 {
  --tw-gradient-from: #2563eb; --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to, rgb(255 255 255 / 0));
}
.from-blue-950\/40 {
  --tw-gradient-from: rgb(23 37 84 / 0.4); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to, rgb(255 255 255 / 0));
}
.from-emerald-900 {
  --tw-gradient-from: #064e3b; --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to, rgb(255 255 255 / 0));
}
.from-gray-900 {
  --tw-gradient-from: #111827; --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to, rgb(255 255 255 / 0));
}
.from-green-50 {
  --tw-gradient-from: #f0fdf4; --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to, rgb(255 255 255 / 0));
}
.from-indigo-50 {
  --tw-gradient-from: #eef2ff; --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to, rgb(255 255 255 / 0));
}
.from-indigo-600 {
  --tw-gradient-from: #4f46e5; --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to, rgb(255 255 255 / 0));
}
.from-indigo-900 {
  --tw-gradient-from: #312e81; --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to, rgb(255 255 255 / 0));
}
.from-slate-800 {
  --tw-gradient-from: #1e293b; --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to, rgb(255 255 255 / 0));
}
.gap-0\.5 {
  gap: 0.125rem;
}
.gap-1 {
  gap: 0.25rem;
}
.gap-1\.5 {
  gap: 0.375rem;
}
.gap-2 {
  gap: 0.5rem;
}
.gap-2\.5 {
  gap: 0.625rem;
}
.gap-3 {
  gap: 0.75rem;
}
.gap-4 {
  gap: 1rem;
}
.gap-5 {
  gap: 1.25rem;
}
.gap-6 {
  gap: 1.5rem;
}
.gap-8 {
  gap: 2rem;
}
.grid {
  display: grid;
}
.grid-cols-1 {
  grid-template-columns: repeat(1,minmax(0,1fr));
}
.grid-cols-2 {
  grid-template-columns: repeat(2,minmax(0,1fr));
}
.group:hover .group-hover\:bg-gray-100 {
  background-color: #f3f4f6;
}
.group:hover .group-hover\:bg-white\/10 {
  background-color: rgb(255 255 255 / 0.1);
}
.group:hover .group-hover\:bg-white\/20 {
  background-color: rgb(255 255 255 / 0.2);
}
.group:hover .group-hover\:opacity-100 {
  opacity: 1;
}
.group:hover .group-hover\:scale-105 {
  transform: scale(1.05);
}
.group:hover .group-hover\:scale-110 {
  transform: scale(1.1);
}
.group:hover .group-hover\:shadow-md {
  box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
}
.group:hover .group-hover\:text-blue-500 {
  color: #3b82f6;
}
.group:hover .group-hover\:text-blue-600 {
  color: #2563eb;
}
.group:hover .group-hover\:text-blue-700 {
  color: #1d4ed8;
}
.group:hover .group-hover\:text-gray-800 {
  color: #1f2937;
}
.group:hover .group-hover\:text-indigo-700 {
  color: #4338ca;
}
.h-0\.5 {
  height: 0.125rem;
}
.h-1 {
  height: 0.25rem;
}
.h-1\.5 {
  height: 0.375rem;
}
.h-10 {
  height: 2.5rem;
}
.h-12 {
  height: 3rem;
}
.h-14 {
  height: 3.5rem;
}
.h-16 {
  height: 4rem;
}
.h-2 {
  height: 0.5rem;
}
.h-20 {
  height: 5rem;
}
.h-24 {
  height: 6rem;
}
.h-28 {
  height: 7rem;
}
.h-3 {
  height: 0.75rem;
}
.h-32 {
  height: 8rem;
}
.h-4 {
  height: 1rem;
}
.h-40 {
  height: 10rem;
}
.h-44 {
  height: 11rem;
}
.h-48 {
  height: 12rem;
}
.h-5 {
  height: 1.25rem;
}
.h-6 {
  height: 1.5rem;
}
.h-64 {
  height: 16rem;
}
.h-7 {
  height: 1.75rem;
}
.h-8 {
  height: 2rem;
}
.h-9 {
  height: 2.25rem;
}
.h-\[50\%\] {
  height: 50%;
}
.h-full {
  height: 100%;
}
.h-px {
  height: 1px;
}
.h-screen {
  height: 100vh;
}
.hidden {
  display: none;
}
.hover\:bg-black:hover {
  background-color: #000;
}
.hover\:bg-blue-100:hover {
  background-color: #dbeafe;
}
.hover\:bg-blue-50:hover {
  background-color: #eff6ff;
}
.hover\:bg-blue-50\/30:hover {
  background-color: rgb(239 246 255 / 0.3);
}
.hover\:bg-blue-700:hover {
  background-color: #1d4ed8;
}
.hover\:bg-emerald-50:hover {
  background-color: #ecfdf5;
}
.hover\:bg-emerald-50\/30:hover {
  background-color: rgb(236 253 245 / 0.3);
}
.hover\:bg-emerald-700:hover {
  background-color: #047857;
}
.hover\:bg-gray-100:hover {
  background-color: #f3f4f6;
}
.hover\:bg-gray-50:hover {
  background-color: #f9fafb;
}
.hover\:bg-indigo-100:hover {
  background-color: #e0e7ff;
}
.hover\:bg-purple-50\/30:hover {
  background-color: rgb(250 245 255 / 0.3);
}
.hover\:bg-purple-700:hover {
  background-color: #7e22ce;
}
.hover\:bg-red-100:hover {
  background-color: #fee2e2;
}
.hover\:bg-red-50:hover {
  background-color: #fef2f2;
}
.hover\:bg-red-600:hover {
  background-color: #dc2626;
}
.hover\:bg-red-700:hover {
  background-color: #b91c1c;
}
.hover\:bg-slate-200:hover {
  background-color: #e2e8f0;
}
.hover\:bg-slate-800:hover {
  background-color: #1e293b;
}
.hover\:bg-white\/10:hover {
  background-color: rgb(255 255 255 / 0.1);
}
.hover\:bg-white\/20:hover {
  background-color: rgb(255 255 255 / 0.2);
}
.hover\:bg-white\/30:hover {
  background-color: rgb(255 255 255 / 0.3);
}
.hover\:border-blue-100:hover {
  border-color: #dbeafe;
}
.hover\:border-blue-200:hover {
  border-color: #bfdbfe;
}
.hover\:border-blue-300:hover {
  border-color: #93c5fd;
}
.hover\:border-emerald-200:hover {
  border-color: #a7f3d0;
}
.hover\:border-emerald-300:hover {
  border-color: #6ee7b7;
}
.hover\:border-gray-200:hover {
  border-color: #e5e7eb;
}
.hover\:border-gray-400:hover {
  border-color: #9ca3af;
}
.hover\:border-purple-300:hover {
  border-color: #d8b4fe;
}
.hover\:border-red-100:hover {
  border-color: #fee2e2;
}
.hover\:border-red-200:hover {
  border-color: #fecaca;
}
.hover\:from-blue-700:hover {
  --tw-gradient-from: #1d4ed8; --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to, rgb(255 255 255 / 0));
}
.hover\:scale-105:hover {
  transform: scale(1.05);
}
.hover\:scale-\[1\.02\]:hover {
  transform: scale(1.02);
}
.hover\:shadow-2xl:hover {
  box-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
}
.hover\:shadow-blue-300:hover {
  --tw-shadow-color: #93c5fd; --tw-shadow: var(--tw-shadow-colored);
}
.hover\:shadow-blue-900\/20:hover {
  --tw-shadow-color: rgb(30 58 138 / 0.2); --tw-shadow: var(--tw-shadow-colored);
}
.hover\:shadow-lg:hover {
  box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
}
.hover\:shadow-md:hover {
  box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
}
.hover\:shadow-sm:hover {
  box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
}
.hover\:text-blue-600:hover {
  color: #2563eb;
}
.hover\:text-blue-700:hover {
  color: #1d4ed8;
}
.hover\:text-emerald-800:hover {
  color: #065f46;
}
.hover\:text-gray-600:hover {
  color: #4b5563;
}
.hover\:text-gray-700:hover {
  color: #374151;
}
.hover\:text-red-500:hover {
  color: #ef4444;
}
.hover\:text-red-600:hover {
  color: #dc2626;
}
.hover\:text-slate-600:hover {
  color: #475569;
}
.hover\:to-indigo-700:hover {
  --tw-gradient-to: #4338ca;
}
.hover\:underline:hover {
  text-decoration-line: underline;
}
.inline-block {
  display: inline-block;
}
.inline-flex {
  display: inline-flex;
}
.inset-0 {
  top: 0px; right: 0px; bottom: 0px; left: 0px;
}
.italic {
  font-style: italic;
}
.items-baseline {
  align-items: baseline;
}
.items-center {
  align-items: center;
}
.items-end {
  align-items: flex-end;
}
.items-start {
  align-items: flex-start;
}
.justify-around {
  justify-content: space-around;
}
.justify-between {
  justify-content: space-between;
}
.justify-center {
  justify-content: center;
}
.justify-end {
  justify-content: flex-end;
}
.last\:border-0:last-child {
  border-width: 0px; border-style: solid;
}
.last\:hidden:last-child {
  display: none;
}
.leading-none {
  line-height: 1;
}
.leading-relaxed {
  line-height: 1.625;
}
.leading-snug {
  line-height: 1.375;
}
.leading-tight {
  line-height: 1.25;
}
.left-0 {
  left: 0px;
}
.left-1\/2 {
  left: 50%;
}
.left-\[-10\%\] {
  left: -10%;
}
@media (min-width:1024px) {
  .lg\:col-span-1 {
    grid-column: span 1 / span 1;
  }
}
@media (min-width:1024px) {
  .lg\:gap-10 {
    gap: 2.5rem;
  }
}
@media (min-width:1024px) {
  .lg\:grid-cols-2 {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}
@media (min-width:1024px) {
  .lg\:grid-cols-3 {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }
}
@media (min-width:1024px) {
  .lg\:grid-cols-4 {
    grid-template-columns: repeat(4,minmax(0,1fr));
  }
}
.line-clamp-2 {
  overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2;
}
.line-through {
  text-decoration-line: line-through;
}
.list-decimal {
  list-style-type: decimal;
}
.list-disc {
  list-style-type: disc;
}
.list-inside {
  list-style-position: inside;
}
.marker\:font-bold ::marker {
  font-weight: 700;
}
.marker\:text-emerald-500 ::marker {
  color: #10b981;
}
.max-h-\[300px\] {
  max-height: 300px;
}
.max-h-\[40vh\] {
  max-height: 40vh;
}
.max-h-\[42vh\] {
  max-height: 42vh;
}
.max-h-\[90vh\] {
  max-height: 90vh;
}
.max-h-\[92vh\] {
  max-height: 92vh;
}
.max-h-\[95vh\] {
  max-height: 95vh;
}
.max-w-2xl {
  max-width: 42rem;
}
.max-w-3xl {
  max-width: 48rem;
}
.max-w-4xl {
  max-width: 56rem;
}
.max-w-5xl {
  max-width: 64rem;
}
.max-w-7xl {
  max-width: 80rem;
}
.max-w-\[100px\] {
  max-width: 100px;
}
.max-w-\[180px\] {
  max-width: 180px;
}
.max-w-\[220px\] {
  max-width: 220px;
}
.max-w-lg {
  max-width: 32rem;
}
.max-w-md {
  max-width: 28rem;
}
.max-w-sm {
  max-width: 24rem;
}
.mb-0\.5 {
  margin-bottom: 0.125rem;
}
.mb-1 {
  margin-bottom: 0.25rem;
}
.mb-1\.5 {
  margin-bottom: 0.375rem;
}
.mb-10 {
  margin-bottom: 2.5rem;
}
.mb-12 {
  margin-bottom: 3rem;
}
.mb-2 {
  margin-bottom: 0.5rem;
}
.mb-3 {
  margin-bottom: 0.75rem;
}
.mb-4 {
  margin-bottom: 1rem;
}
.mb-5 {
  margin-bottom: 1.25rem;
}
.mb-6 {
  margin-bottom: 1.5rem;
}
.mb-7 {
  margin-bottom: 1.75rem;
}
.mb-8 {
  margin-bottom: 2rem;
}
@media (min-width:768px) {
  .md\:block {
    display: block;
  }
}
@media (min-width:768px) {
  .md\:col-span-2 {
    grid-column: span 2 / span 2;
  }
}
@media (min-width:768px) {
  .md\:flex {
    display: flex;
  }
}
@media (min-width:768px) {
  .md\:flex-row {
    flex-direction: row;
  }
}
@media (min-width:768px) {
  .md\:grid-cols-2 {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}
@media (min-width:768px) {
  .md\:grid-cols-4 {
    grid-template-columns: repeat(4,minmax(0,1fr));
  }
}
@media (min-width:768px) {
  .md\:hidden {
    display: none;
  }
}
@media (min-width:768px) {
  .md\:items-center {
    align-items: center;
  }
}
@media (min-width:768px) {
  .md\:max-w-lg {
    max-width: 32rem;
  }
}
@media (min-width:768px) {
  .md\:p-12 {
    padding: 3rem;
  }
}
@media (min-width:768px) {
  .md\:p-16 {
    padding: 4rem;
  }
}
@media (min-width:768px) {
  .md\:p-6 {
    padding: 1.5rem;
  }
}
@media (min-width:768px) {
  .md\:p-8 {
    padding: 2rem;
  }
}
@media (min-width:768px) {
  .md\:px-8 {
    padding-left: 2rem; padding-right: 2rem;
  }
}
@media (min-width:768px) {
  .md\:py-16 {
    padding-top: 4rem; padding-bottom: 4rem;
  }
}
@media (min-width:768px) {
  .md\:rounded-\[2\.5rem\] {
    border-radius: 2.5rem;
  }
}
@media (min-width:768px) {
  .md\:text-3xl {
    font-size: 1.875rem; line-height: 2.25rem;
  }
}
@media (min-width:768px) {
  .md\:text-4xl {
    font-size: 2.25rem; line-height: 2.5rem;
  }
}
@media (min-width:768px) {
  .md\:text-left {
    text-align: left;
  }
}
@media (min-width:768px) {
  .md\:w-5\/12 {
    width: 41.666667%;
  }
}
@media (min-width:768px) {
  .md\:w-7\/12 {
    width: 58.333333%;
  }
}
@media (min-width:768px) {
  .md\:w-auto {
    width: auto;
  }
}
.min-h-\[250px\] {
  min-height: 250px;
}
.min-h-\[350px\] {
  min-height: 350px;
}
.min-h-\[50vh\] {
  min-height: 50vh;
}
.min-h-\[540px\] {
  min-height: 540px;
}
.min-h-\[60vh\] {
  min-height: 60vh;
}
.min-h-screen {
  min-height: 100vh;
}
.min-w-0 {
  min-width: 0;
}
.min-w-\[160px\] {
  min-width: 160px;
}
.ml-1 {
  margin-left: 0.25rem;
}
.ml-2 {
  margin-left: 0.5rem;
}
.ml-3 {
  margin-left: 0.75rem;
}
.ml-5 {
  margin-left: 1.25rem;
}
.ml-6 {
  margin-left: 1.5rem;
}
.ml-auto {
  margin-left: auto;
}
.mr-2 {
  margin-right: 0.5rem;
}
.mr-3 {
  margin-right: 0.75rem;
}
.mt-0\.5 {
  margin-top: 0.125rem;
}
.mt-1 {
  margin-top: 0.25rem;
}
.mt-1\.5 {
  margin-top: 0.375rem;
}
.mt-12 {
  margin-top: 3rem;
}
.mt-2 {
  margin-top: 0.5rem;
}
.mt-3 {
  margin-top: 0.75rem;
}
.mt-4 {
  margin-top: 1rem;
}
.mt-5 {
  margin-top: 1.25rem;
}
.mt-6 {
  margin-top: 1.5rem;
}
.mt-8 {
  margin-top: 2rem;
}
.mt-auto {
  margin-top: auto;
}
.mx-2 {
  margin-left: 0.5rem; margin-right: 0.5rem;
}
.mx-auto {
  margin-left: auto; margin-right: auto;
}
.opacity-0 {
  opacity: 0;
}
.opacity-10 {
  opacity: 0.1;
}
.opacity-40 {
  opacity: 0.4;
}
.opacity-5 {
  opacity: 0.05;
}
.opacity-50 {
  opacity: 0.5;
}
.opacity-60 {
  opacity: 0.6;
}
.opacity-70 {
  opacity: 0.7;
}
.opacity-80 {
  opacity: 0.8;
}
.outline-none {
  outline: 2px solid transparent; outline-offset: 2px;
}
.overflow-hidden {
  overflow: hidden;
}
.overflow-x-auto {
  overflow-x: auto;
}
.overflow-y-auto {
  overflow-y: auto;
}
.p-0 {
  padding: 0px;
}
.p-1 {
  padding: 0.25rem;
}
.p-1\.5 {
  padding: 0.375rem;
}
.p-10 {
  padding: 2.5rem;
}
.p-2 {
  padding: 0.5rem;
}
.p-3 {
  padding: 0.75rem;
}
.p-4 {
  padding: 1rem;
}
.p-5 {
  padding: 1.25rem;
}
.p-6 {
  padding: 1.5rem;
}
.p-8 {
  padding: 2rem;
}
.pb-2 {
  padding-bottom: 0.5rem;
}
.pb-20 {
  padding-bottom: 5rem;
}
.pb-6 {
  padding-bottom: 1.5rem;
}
.pb-8 {
  padding-bottom: 2rem;
}
.pl-1 {
  padding-left: 0.25rem;
}
.pl-2 {
  padding-left: 0.5rem;
}
.pl-4 {
  padding-left: 1rem;
}
.pl-5 {
  padding-left: 1.25rem;
}
.placeholder-emerald-200\/40 {
  color: rgb(167 243 208 / 0.4);
}
.placeholder-emerald-200\/50 {
  color: rgb(167 243 208 / 0.5);
}
.placeholder\:text-gray-300::placeholder {
  color: #d1d5db;
}
.pointer-events-none {
  pointer-events: none;
}
.pr-16 {
  padding-right: 4rem;
}
.pr-2 {
  padding-right: 0.5rem;
}
.pr-24 {
  padding-right: 6rem;
}
.pr-4 {
  padding-right: 1rem;
}
.pt-0 {
  padding-top: 0px;
}
.pt-1\.5 {
  padding-top: 0.375rem;
}
.pt-2 {
  padding-top: 0.5rem;
}
.pt-4 {
  padding-top: 1rem;
}
.pt-5 {
  padding-top: 1.25rem;
}
.pt-6 {
  padding-top: 1.5rem;
}
.pt-8 {
  padding-top: 2rem;
}
.px-1 {
  padding-left: 0.25rem; padding-right: 0.25rem;
}
.px-1\.5 {
  padding-left: 0.375rem; padding-right: 0.375rem;
}
.px-10 {
  padding-left: 2.5rem; padding-right: 2.5rem;
}
.px-12 {
  padding-left: 3rem; padding-right: 3rem;
}
.px-2 {
  padding-left: 0.5rem; padding-right: 0.5rem;
}
.px-3 {
  padding-left: 0.75rem; padding-right: 0.75rem;
}
.px-4 {
  padding-left: 1rem; padding-right: 1rem;
}
.px-5 {
  padding-left: 1.25rem; padding-right: 1.25rem;
}
.px-6 {
  padding-left: 1.5rem; padding-right: 1.5rem;
}
.px-8 {
  padding-left: 2rem; padding-right: 2rem;
}
.py-0\.5 {
  padding-top: 0.125rem; padding-bottom: 0.125rem;
}
.py-1 {
  padding-top: 0.25rem; padding-bottom: 0.25rem;
}
.py-1\.5 {
  padding-top: 0.375rem; padding-bottom: 0.375rem;
}
.py-10 {
  padding-top: 2.5rem; padding-bottom: 2.5rem;
}
.py-12 {
  padding-top: 3rem; padding-bottom: 3rem;
}
.py-16 {
  padding-top: 4rem; padding-bottom: 4rem;
}
.py-2 {
  padding-top: 0.5rem; padding-bottom: 0.5rem;
}
.py-2\.5 {
  padding-top: 0.625rem; padding-bottom: 0.625rem;
}
.py-24 {
  padding-top: 6rem; padding-bottom: 6rem;
}
.py-3 {
  padding-top: 0.75rem; padding-bottom: 0.75rem;
}
.py-32 {
  padding-top: 8rem; padding-bottom: 8rem;
}
.py-4 {
  padding-top: 1rem; padding-bottom: 1rem;
}
.py-5 {
  padding-top: 1.25rem; padding-bottom: 1.25rem;
}
.py-6 {
  padding-top: 1.5rem; padding-bottom: 1.5rem;
}
.py-8 {
  padding-top: 2rem; padding-bottom: 2rem;
}
.relative {
  position: relative;
}
.resize-none {
  resize: none;
}
.right-0 {
  right: 0px;
}
.right-36 {
  right: 9rem;
}
.right-4 {
  right: 1rem;
}
.right-5 {
  right: 1.25rem;
}
.right-6 {
  right: 1.5rem;
}
.right-\[-10\%\] {
  right: -10%;
}
.rounded {
  border-radius: 0.25rem;
}
.rounded-2xl {
  border-radius: 1rem;
}
.rounded-3xl {
  border-radius: 1.5rem;
}
.rounded-\[1\.5rem\] {
  border-radius: 1.5rem;
}
.rounded-\[2\.5rem\] {
  border-radius: 2.5rem;
}
.rounded-\[2rem\] {
  border-radius: 2rem;
}
.rounded-\[3rem\] {
  border-radius: 3rem;
}
.rounded-full {
  border-radius: 9999px;
}
.rounded-lg {
  border-radius: 0.5rem;
}
.rounded-t-\[2\.5rem\] {
  border-top-left-radius: 2.5rem; border-top-right-radius: 2.5rem;
}
.rounded-t-\[2rem\] {
  border-top-left-radius: 2rem; border-top-right-radius: 2rem;
}
.rounded-xl {
  border-radius: 0.75rem;
}
.self-start {
  align-self: flex-start;
}
.shadow-2xl {
  box-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
}
.shadow-blue-100 {
  --tw-shadow-color: #dbeafe; --tw-shadow: var(--tw-shadow-colored);
}
.shadow-blue-200 {
  --tw-shadow-color: #bfdbfe; --tw-shadow: var(--tw-shadow-colored);
}
.shadow-lg {
  box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
}
.shadow-md {
  box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
}
.shadow-red-100 {
  --tw-shadow-color: #fee2e2; --tw-shadow: var(--tw-shadow-colored);
}
.shadow-sm {
  box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
}
.shadow-xl {
  box-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
}
.shadow-xs {
  box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.03);
}
.shrink-0 {
  flex-shrink: 0;
}
@media (min-width:640px) {
  .sm\:block {
    display: block;
  }
}
@media (min-width:640px) {
  .sm\:flex-row {
    flex-direction: row;
  }
}
@media (min-width:640px) {
  .sm\:grid-cols-2 {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}
@media (min-width:640px) {
  .sm\:grid-cols-3 {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }
}
@media (min-width:640px) {
  .sm\:hidden {
    display: none;
  }
}
@media (min-width:640px) {
  .sm\:inline {
    display: inline;
  }
}
@media (min-width:640px) {
  .sm\:items-center {
    align-items: center;
  }
}
@media (min-width:640px) {
  .sm\:items-start {
    align-items: flex-start;
  }
}
@media (min-width:640px) {
  .sm\:max-w-md {
    max-width: 28rem;
  }
}
@media (min-width:640px) {
  .sm\:mb-10 {
    margin-bottom: 2.5rem;
  }
}
@media (min-width:640px) {
  .sm\:mt-6 {
    margin-top: 1.5rem;
  }
}
@media (min-width:640px) {
  .sm\:p-4 {
    padding: 1rem;
  }
}
@media (min-width:640px) {
  .sm\:p-6 {
    padding: 1.5rem;
  }
}
@media (min-width:640px) {
  .sm\:p-8 {
    padding: 2rem;
  }
}
@media (min-width:640px) {
  .sm\:pt-6 {
    padding-top: 1.5rem;
  }
}
@media (min-width:640px) {
  .sm\:px-8 {
    padding-left: 2rem; padding-right: 2rem;
  }
}
@media (min-width:640px) {
  .sm\:py-4 {
    padding-top: 1rem; padding-bottom: 1rem;
  }
}
@media (min-width:640px) {
  .sm\:rounded-\[2rem\] {
    border-radius: 2rem;
  }
}
@media (min-width:640px) {
  .sm\:rounded-\[3rem\] {
    border-radius: 3rem;
  }
}
@media (min-width:640px) {
  .sm\:self-center {
    align-self: center;
  }
}
@media (min-width:640px) {
  .sm\:text-3xl {
    font-size: 1.875rem; line-height: 2.25rem;
  }
}
@media (min-width:640px) {
  .sm\:text-xl {
    font-size: 1.25rem; line-height: 1.75rem;
  }
}
.space-y-1 {
  --tw-space-y-reverse: 0; margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));
}
.space-y-2 {
  --tw-space-y-reverse: 0; margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));
}
.space-y-3 {
  --tw-space-y-reverse: 0; margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.75rem * var(--tw-space-y-reverse));
}
.space-y-4 {
  --tw-space-y-reverse: 0; margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(1rem * var(--tw-space-y-reverse));
}
.space-y-5 {
  --tw-space-y-reverse: 0; margin-top: calc(1.25rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(1.25rem * var(--tw-space-y-reverse));
}
.space-y-6 {
  --tw-space-y-reverse: 0; margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(1.5rem * var(--tw-space-y-reverse));
}
.space-y-8 {
  --tw-space-y-reverse: 0; margin-top: calc(2rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(2rem * var(--tw-space-y-reverse));
}
.sticky {
  position: sticky;
}
.tabular-nums {
  font-variant-numeric: tabular-nums;
}
.text-2xl {
  font-size: 1.5rem; line-height: 2rem;
}
.text-3xl {
  font-size: 1.875rem; line-height: 2.25rem;
}
.text-4xl {
  font-size: 2.25rem; line-height: 2.5rem;
}
.text-5xl {
  font-size: 3rem; line-height: 1;
}
.text-6xl {
  font-size: 3.75rem; line-height: 1;
}
.text-7xl {
  font-size: 4.5rem; line-height: 1;
}
.text-\[10px\] {
  font-size: 10px;
}
.text-\[11px\] {
  font-size: 11px;
}
.text-\[13px\] {
  font-size: 13px;
}
.text-\[8px\] {
  font-size: 8px;
}
.text-\[9px\] {
  font-size: 9px;
}
.text-amber-200 {
  color: #fde68a;
}
.text-amber-300 {
  color: #fcd34d;
}
.text-amber-500 {
  color: #f59e0b;
}
.text-amber-600 {
  color: #d97706;
}
.text-amber-700 {
  color: #b45309;
}
.text-amber-800 {
  color: #92400e;
}
.text-amber-800\/80 {
  color: rgb(146 64 14 / 0.8);
}
.text-amber-900 {
  color: #78350f;
}
.text-base {
  font-size: 1rem; line-height: 1.5rem;
}
.text-blue-100 {
  color: #dbeafe;
}
.text-blue-100\/80 {
  color: rgb(219 234 254 / 0.8);
}
.text-blue-200 {
  color: #bfdbfe;
}
.text-blue-300 {
  color: #93c5fd;
}
.text-blue-300\/60 {
  color: rgb(147 197 253 / 0.6);
}
.text-blue-400 {
  color: #60a5fa;
}
.text-blue-500 {
  color: #3b82f6;
}
.text-blue-600 {
  color: #2563eb;
}
.text-blue-600\/60 {
  color: rgb(37 99 235 / 0.6);
}
.text-blue-700 {
  color: #1d4ed8;
}
.text-blue-700\/70 {
  color: rgb(29 78 216 / 0.7);
}
.text-blue-900 {
  color: #1e3a8a;
}
.text-center {
  text-align: center;
}
.text-emerald-100 {
  color: #d1fae5;
}
.text-emerald-100\/80 {
  color: rgb(209 250 229 / 0.8);
}
.text-emerald-200\/80 {
  color: rgb(167 243 208 / 0.8);
}
.text-emerald-300 {
  color: #6ee7b7;
}
.text-emerald-400 {
  color: #34d399;
}
.text-emerald-500 {
  color: #10b981;
}
.text-emerald-600 {
  color: #059669;
}
.text-emerald-700 {
  color: #047857;
}
.text-emerald-800 {
  color: #065f46;
}
.text-emerald-900 {
  color: #064e3b;
}
.text-emerald-900\/80 {
  color: rgb(6 78 59 / 0.8);
}
.text-gray-200 {
  color: #e5e7eb;
}
.text-gray-300 {
  color: #d1d5db;
}
.text-gray-400 {
  color: #9ca3af;
}
.text-gray-500 {
  color: #6b7280;
}
.text-gray-600 {
  color: #4b5563;
}
.text-gray-700 {
  color: #374151;
}
.text-gray-800 {
  color: #1f2937;
}
.text-gray-900 {
  color: #111827;
}
.text-green-200\/70 {
  color: rgb(187 247 208 / 0.7);
}
.text-green-300 {
  color: #86efac;
}
.text-green-400 {
  color: #4ade80;
}
.text-green-500 {
  color: #22c55e;
}
.text-green-600 {
  color: #16a34a;
}
.text-green-700 {
  color: #15803d;
}
.text-green-700\/80 {
  color: rgb(21 128 61 / 0.8);
}
.text-green-800 {
  color: #166534;
}
.text-green-900 {
  color: #14532d;
}
.text-indigo-400 {
  color: #818cf8;
}
.text-indigo-500 {
  color: #6366f1;
}
.text-indigo-600 {
  color: #4f46e5;
}
.text-left {
  text-align: left;
}
.text-lg {
  font-size: 1.125rem; line-height: 1.75rem;
}
.text-orange-300 {
  color: #fdba74;
}
.text-orange-500 {
  color: #f97316;
}
.text-orange-600 {
  color: #ea580c;
}
.text-orange-700 {
  color: #c2410c;
}
.text-purple-400 {
  color: #c084fc;
}
.text-purple-500 {
  color: #a855f7;
}
.text-purple-600 {
  color: #9333ea;
}
.text-purple-900 {
  color: #581c87;
}
.text-red-400 {
  color: #f87171;
}
.text-red-500 {
  color: #ef4444;
}
.text-red-600 {
  color: #dc2626;
}
.text-red-700 {
  color: #b91c1c;
}
.text-red-800\/70 {
  color: rgb(153 27 27 / 0.7);
}
.text-red-900 {
  color: #7f1d1d;
}
.text-right {
  text-align: right;
}
.text-slate-300 {
  color: #cbd5e1;
}
.text-slate-400 {
  color: #94a3b8;
}
.text-slate-500 {
  color: #64748b;
}
.text-slate-600 {
  color: #475569;
}
.text-slate-700 {
  color: #334155;
}
.text-slate-800 {
  color: #1e293b;
}
.text-slate-900 {
  color: #0f172a;
}
.text-sm {
  font-size: 0.875rem; line-height: 1.25rem;
}
.text-white {
  color: #fff;
}
.text-white\/40 {
  color: rgb(255 255 255 / 0.4);
}
.text-white\/50 {
  color: rgb(255 255 255 / 0.5);
}
.text-white\/60 {
  color: rgb(255 255 255 / 0.6);
}
.text-white\/70 {
  color: rgb(255 255 255 / 0.7);
}
.text-white\/90 {
  color: rgb(255 255 255 / 0.9);
}
.text-xl {
  font-size: 1.25rem; line-height: 1.75rem;
}
.text-xs {
  font-size: 0.75rem; line-height: 1rem;
}
.text-yellow-300 {
  color: #fde047;
}
.text-yellow-500 {
  color: #eab308;
}
.text-yellow-600 {
  color: #ca8a04;
}
.text-yellow-900 {
  color: #713f12;
}
.to-blue-50 {
  --tw-gradient-to: #eff6ff;
}
.to-blue-700 {
  --tw-gradient-to: #1d4ed8;
}
.to-blue-900 {
  --tw-gradient-to: #1e3a8a;
}
.to-emerald-50 {
  --tw-gradient-to: #ecfdf5;
}
.to-green-900 {
  --tw-gradient-to: #14532d;
}
.to-indigo-50 {
  --tw-gradient-to: #eef2ff;
}
.to-indigo-600 {
  --tw-gradient-to: #4f46e5;
}
.to-indigo-700 {
  --tw-gradient-to: #4338ca;
}
.to-indigo-950\/30 {
  --tw-gradient-to: rgb(30 27 75 / 0.3);
}
.to-purple-700 {
  --tw-gradient-to: #7e22ce;
}
.to-slate-900 {
  --tw-gradient-to: #0f172a;
}
.to-transparent {
  --tw-gradient-to: transparent;
}
.top-0 {
  top: 0px;
}
.top-1\.5 {
  top: 0.375rem;
}
.top-1\/2 {
  top: 50%;
}
.top-4 {
  top: 1rem;
}
.top-5 {
  top: 1.25rem;
}
.top-6 {
  top: 1.5rem;
}
.top-\[-10\%\] {
  top: -10%;
}
.top-full {
  top: 100%;
}
.tracking-\[0\.5em\] {
  letter-spacing: 0.5em;
}
.tracking-tight {
  letter-spacing: -0.025em;
}
.tracking-tighter {
  letter-spacing: -0.05em;
}
.tracking-wide {
  letter-spacing: 0.025em;
}
.tracking-wider {
  letter-spacing: 0.05em;
}
.tracking-widest {
  letter-spacing: 0.1em;
}
.transition {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms;
}
.transition-all {
  transition-property: all; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms;
}
.transition-colors {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms;
}
.transition-opacity {
  transition-property: opacity; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms;
}
.transition-shadow {
  transition-property: box-shadow; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms;
}
.transition-transform {
  transition-property: transform; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms;
}
.truncate {
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.underline {
  text-decoration-line: underline;
}
.uppercase {
  text-transform: uppercase;
}
.via-indigo-600 {
  --tw-gradient-stops: var(--tw-gradient-from), #4f46e5, var(--tw-gradient-to, rgb(255 255 255 / 0));
}
.via-slate-950 {
  --tw-gradient-stops: var(--tw-gradient-from), #020617, var(--tw-gradient-to, rgb(255 255 255 / 0));
}
.w-0\.5 {
  width: 0.125rem;
}
.w-1\.5 {
  width: 0.375rem;
}
.w-10 {
  width: 2.5rem;
}
.w-12 {
  width: 3rem;
}
.w-14 {
  width: 3.5rem;
}
.w-16 {
  width: 4rem;
}
.w-2 {
  width: 0.5rem;
}
.w-20 {
  width: 5rem;
}
.w-24 {
  width: 6rem;
}
.w-28 {
  width: 7rem;
}
.w-3 {
  width: 0.75rem;
}
.w-32 {
  width: 8rem;
}
.w-4 {
  width: 1rem;
}
.w-40 {
  width: 10rem;
}
.w-48 {
  width: 12rem;
}
.w-5 {
  width: 1.25rem;
}
.w-6 {
  width: 1.5rem;
}
.w-64 {
  width: 16rem;
}
.w-7 {
  width: 1.75rem;
}
.w-72 {
  width: 18rem;
}
.w-8 {
  width: 2rem;
}
.w-9 {
  width: 2.25rem;
}
.w-\[50\%\] {
  width: 50%;
}
.w-fit {
  width: fit-content;
}
.w-full {
  width: 100%;
}
.whitespace-nowrap {
  white-space: nowrap;
}
.whitespace-pre-wrap {
  white-space: pre-wrap;
}
.z-0 {
  z-index: 0;
}
.z-10 {
  z-index: 10;
}
.z-20 {
  z-index: 20;
}
.z-30 {
  z-index: 30;
}
.z-40 {
  z-index: 40;
}
.z-50 {
  z-index: 50;
}
.z-\[100\] {
  z-index: 100;
}
.z-\[101\] {
  z-index: 101;
}
.z-\[150\] {
  z-index: 150;
}
.z-\[200\] {
  z-index: 200;
}
.z-\[90\] {
  z-index: 90;
}
/* ─── Wearables & Email Scanner additions ─────────────────────── */
.max-h-96{max-height:24rem}
.border-b-2{border-bottom-width:2px}
.border-black/5{border-color:rgba(0,0,0,0.05)}
.border-emerald-600{border-color:#059669}
.fill-blue-100{fill:#dbeafe}
.fill-blue-500{fill:#3b82f6}
.line-clamp-1{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.bg-teal-50{background-color:#f0fdfa}
.border-teal-100{border-color:#ccfbf1}
.text-teal-700{color:#0f766e}
.bg-cyan-50{background-color:#ecfeff}
.border-cyan-100{border-color:#cffafe}
.text-cyan-700{color:#0e7490}
.bg-rose-50{background-color:#fff1f2}
.border-rose-100{border-color:#ffe4e6}
.text-rose-600{color:#e11d48}

/* hover and focus state variants for new components */
.hover\:bg-blue-700:hover{background-color:#1d4ed8}
.hover\:text-red-700:hover{color:#b91c1c}
.hover\:text-gray-600:hover{color:#4b5563}
.border-b-2{border-bottom-width:2px}
.border-t-2{border-top-width:2px}
.border-blue-600{border-color:#2563eb}
.border-emerald-600{border-color:#059669}
.bg-blue-50\/50{background-color:rgba(239,246,255,0.5)}
.bg-emerald-50\/50{background-color:rgba(236,253,245,0.5)}
.pt-0{padding-top:0}
.pb-5{padding-bottom:1.25rem}
.px-5{padding-left:1.25rem;padding-right:1.25rem}
