.overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:9999}.spinner{border:4px solid #f3f3f3;border-top:4px solid #3498db;border-radius:50%;width:50px;height:50px;animation:spin 1s linear infinite;margin-bottom:4px}.message{color:#fff;font-size:18px;margin-top:10px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.dark{--mesh-bg: radial-gradient(at 0% 0%, hsla(210, 50%, 12%, 1) 0, transparent 50%), radial-gradient(at 50% 0%, hsla(225, 45%, 10%, 1) 0, transparent 50%), radial-gradient(at 100% 0%, hsla(200, 50%, 9%, 1) 0, transparent 50%);color-scheme:dark}.dark body{background-color:#020617;background-image:var(--mesh-bg);color:#e2e8f0}.dark::-webkit-scrollbar-thumb,.dark ::-webkit-scrollbar-thumb{background:#334155}.dark::-webkit-scrollbar-thumb:hover,.dark ::-webkit-scrollbar-thumb:hover{background:#475569}.dark .bg-white{background-color:#0f172a}.dark .bg-white\/90{background-color:#0f172ae6}.dark .bg-white\/80{background-color:#0f172acc}.dark .bg-white\/60{background-color:#0f172a99}.dark .bg-white\/50{background-color:#0f172a80}.dark .bg-white\/40{background-color:#0f172a73}.dark .bg-white\/30{background-color:#0f172a59}.dark .bg-white\/20{background-color:#0f172a40}.dark .bg-slate-50{background-color:#1e293b}.dark .bg-slate-50\/80{background-color:#1e293bcc}.dark .bg-slate-50\/50{background-color:#1e293b80}.dark .bg-slate-100{background-color:#1e293b}.dark .bg-slate-100\/70{background-color:#1e293bb3}.dark .bg-slate-100\/50{background-color:#1e293b80}.dark .bg-slate-100\/40{background-color:#1e293b66}.dark .bg-slate-200{background-color:#334155}.dark .bg-slate-200\/50{background-color:#33415580}.dark .bg-gray-200{background-color:#334155}.dark .bg-slate-300{background-color:#475569}.dark .bg-slate-800{background-color:#1e293b}.dark .bg-slate-800\/80{background-color:#1e293bcc}.dark .text-slate-950{color:#f8fafc}.dark .text-slate-900{color:#f1f5f9}.dark .text-slate-800{color:#e2e8f0}.dark .text-slate-800\/80{color:#e2e8f0cc}.dark .text-slate-700{color:#cbd5e1}.dark .text-slate-600,.dark .text-slate-500{color:#94a3b8}.dark .text-slate-400{color:#8b98ad}.dark .text-slate-400\/70{color:#8b98adb3}.dark .text-slate-300{color:#cbd5e1}.dark .text-gray-400{color:#9ca3af}.dark .border-slate-300{border-color:#475569}.dark .border-slate-300\/70{border-color:#475569b3}.dark .border-slate-200{border-color:#1e293b}.dark .border-slate-200\/50{border-color:#1e293b80}.dark .border-slate-100{border-color:#1e293b}.dark .border-slate-100\/50{border-color:#1e293b80}.dark .border-white{border-color:#ffffff1f}.dark .border-white\/60,.dark .border-white\/50{border-color:#ffffff1a}.dark .border-white\/40{border-color:#ffffff14}.dark .border-white\/20,.dark .border-white\/10{border-color:#ffffff0f}.dark .from-white{--tw-gradient-from: #0f172a var(--tw-gradient-from-position);--tw-gradient-to: rgba(15,23,42,0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark .from-white\/30{--tw-gradient-from: rgba(15,23,42,.3) var(--tw-gradient-from-position);--tw-gradient-to: rgba(15,23,42,0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark .from-white\/25{--tw-gradient-from: rgba(15,23,42,.25) var(--tw-gradient-from-position);--tw-gradient-to: rgba(15,23,42,0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark .from-white\/20{--tw-gradient-from: rgba(15,23,42,.2) var(--tw-gradient-from-position);--tw-gradient-to: rgba(15,23,42,0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark .glass-card{background:#0f172a99;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08)}.dark body,.dark .bg-white,.dark .bg-slate-50,.dark .bg-slate-100,.dark .text-slate-900,.dark .text-slate-800,.dark .text-slate-700,.dark .text-slate-600,.dark .text-slate-500,.dark .text-slate-400,.dark .border-slate-200,.dark .border-slate-100{transition:background-color .2s ease,border-color .2s ease,color .2s ease}
