@import "https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800&family=Montserrat:wght@400;500;600&display=swap";
:root{--cf-purple:#6c5ce7;--cf-purple-hover:#5a4bd6;--cf-purple-dark:#4834c5;--cf-purple-light:#8b7cf0;--cf-purple-wash:#6c5ce71a;--cf-gold:#f5c518;--cf-gold-hover:#e6b800;--cf-gold-dark:#d4a80e;--cf-charcoal:#222;--font-head:"Poppins", system-ui, -apple-system, "Segoe UI", sans-serif;--font-body:"Montserrat", system-ui, -apple-system, "Segoe UI", sans-serif;--font-sans:var(--font-body);--motion-instant:.1s;--motion-fast:.2s;--motion-normal:.3s;--motion-slow:.5s;--ease-out-soft:cubic-bezier(.16, 1, .3, 1)}*,:before,:after{box-sizing:border-box}html,body{height:100%;font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;padding:0}::selection{background:#6c5ce759}:focus-visible{outline:2px solid var(--cf-purple);outline-offset:2px;border-radius:4px}button{font-family:var(--font-head)}input,textarea,select{font-family:var(--font-body)}button,a,input,select,textarea{transition:background-color var(--motion-fast) ease, border-color var(--motion-fast) ease, color var(--motion-fast) ease, box-shadow var(--motion-fast) ease, opacity var(--motion-fast) ease, transform var(--motion-fast) ease}button:not(:disabled):active{transform:scale(.97)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes riseIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes modalIn{0%{opacity:0;transform:scale(.96)translateY(12px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes toastIn{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes shake{10%,90%{transform:translate(-1px)}20%,80%{transform:translate(2px)}30%,50%,70%{transform:translate(-3px)}40%,60%{transform:translate(3px)}}@keyframes floatY{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 #6c5ce759}50%{box-shadow:0 0 0 6px #6c5ce700}}@keyframes pulseDot{0%,to{opacity:1;box-shadow:0 0 #22c55e73}50%{opacity:.75;box-shadow:0 0 0 5px #22c55e00}}.animate-spin{animation:.7s linear infinite spin}.animate-fadeIn{animation:fadeIn var(--motion-normal) ease both}.animate-riseIn{animation:riseIn var(--motion-normal) var(--ease-out-soft) both}.animate-slideUp{animation:slideUp .45s var(--ease-out-soft) both}.animate-modalIn{animation:modalIn var(--motion-normal) var(--ease-out-soft) both}.animate-toastIn{animation:toastIn var(--motion-fast) var(--ease-out-soft) both}.animate-shake{animation:.45s both shake}.card-lift{transition:transform var(--motion-fast) var(--ease-out-soft), box-shadow var(--motion-fast) ease, border-color var(--motion-fast) ease, background var(--motion-fast) ease}.card-lift:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000002e}tr.row-anim{animation:riseIn .3s var(--ease-out-soft) both}.skeleton{background:linear-gradient(90deg,#1a1a2a 0%,#262638 50%,#1a1a2a 100%) 0 0/200% 100%;border-radius:8px;animation:1.6s ease-in-out infinite shimmer}[data-theme=light] .skeleton{background:linear-gradient(90deg,#e6e4f2 0%,#f3f1fb 50%,#e6e4f2 100%) 0 0/200% 100%}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#2a2a3a;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#3d3d52}[data-theme=light] ::-webkit-scrollbar-thumb{background:#c9c6dd}[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:#a8a3c7}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{.no-print{display:none!important}body{color:#000!important;background:#fff!important}}
