@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Plus+Jakarta+Sans:wght@600;700;800&display=swap";@tailwind base;@tailwind components;@tailwind utilities;:root{--motion-instant: 0ms;--motion-micro: .1s;--motion-fast: .15s;--motion-normal: .2s;--motion-moderate: .3s;--motion-slow: .5s;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in: cubic-bezier(.7, 0, .84, 0);--ease-standard: cubic-bezier(.25, .1, .25, 1);--ease-in-out: cubic-bezier(.45, 0, .55, 1);--ease-bounce: cubic-bezier(.34, 1.56, .64, 1);font-family:Inter,system-ui,-apple-system,sans-serif;color-scheme:dark}body{@apply bg-surface text-white antialiased;}@keyframes badge-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.75)}}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}@keyframes fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-up{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes fade-in-overlay{0%{opacity:0}to{opacity:1}}@keyframes cursor-blink{0%,to{opacity:1}50%{opacity:0}}@keyframes login-panel-left-enter{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:translate(0)}}@keyframes login-fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes login-fade-in{0%{opacity:0}to{opacity:1}}@keyframes login-btn-enter{0%{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes login-shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}@keyframes login-icon-bounce{0%{opacity:0;transform:translateY(12px) scale(.85)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes field-slide-in{0%{opacity:0;max-height:0;transform:translateY(-6px)}to{opacity:1;max-height:80px;transform:translateY(0)}}@keyframes field-slide-out{0%{opacity:1;max-height:80px;transform:translateY(0)}to{opacity:0;max-height:0;transform:translateY(-6px)}}@layer components{.card{@apply bg-surface-raised border border-surface-border rounded-card;box-shadow:0 1px 2px #0000004d,0 0 0 1px #ffffff05;transition:transform var(--motion-normal) var(--ease-standard),box-shadow var(--motion-normal) var(--ease-standard),border-color var(--motion-normal) var(--ease-standard),background-color var(--motion-normal) var(--ease-standard)}.card-hover{@apply card cursor-pointer;}.card-hover:hover{transform:translateY(-2px);border-color:#2a2a32;background-color:#16161a;box-shadow:0 4px 16px #00000059,0 0 0 1px #8b5cf61a,0 0 24px #8b5cf60d}.card-hover:active{transform:translateY(0) scale(.985);box-shadow:0 1px 4px #0000004d,0 0 0 1px #8b5cf626;transition-duration:80ms}.btn{@apply inline-flex items-center gap-2 px-4 py-2 rounded-[10px] font-semibold text-[13px] select-none focus:outline-none focus:ring-2 focus:ring-brand/40 focus:ring-offset-1 focus:ring-offset-surface;transition:transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out),background-color var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out)}.btn:active{transform:scale(.97) translateY(.5px);transition-duration:80ms}.btn-primary{@apply btn text-white;background:linear-gradient(135deg,#8b5cf6,#6d28d9);box-shadow:0 1px 2px #0000004d,0 4px 12px #8b5cf640,inset 0 1px #ffffff1a}.btn-primary:hover{transform:translateY(-.5px);background:linear-gradient(135deg,#7c3aed,#5b21b6);box-shadow:0 1px 2px #0000004d,0 8px 24px #8b5cf659,inset 0 1px #ffffff1a}.btn-primary:disabled{background:#27272a;color:#52525b;box-shadow:none;cursor:not-allowed;transform:none}.btn-secondary{@apply btn text-[#a1a1aa];background:#1a1a1f;border:1px solid #2a2a32;box-shadow:0 1px 2px #0003}.btn-secondary:hover{border-color:#3a3a45;color:#f4f4f5;background:#1f1f25}.btn-ghost{@apply btn text-muted;background:transparent;border:1px solid transparent}.btn-ghost:hover{background:#ffffff0a;color:#f4f4f5;border-color:#1f1f24}.btn-danger{@apply btn text-red-400;background:transparent;border:1px solid rgba(239,68,68,.2)}.btn-danger:hover{background:#ef444414;border-color:#ef444459;color:#fca5a5}.input{@apply w-full text-[13px] text-white;background:#131316;border:1px solid #1f1f24;border-radius:10px;padding:10px 14px;caret-color:#8b5cf6;box-shadow:0 1px 2px #00000026;transition:border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out)}.input::placeholder{color:#52525b}.input:hover:not(:focus){border-color:#2a2a32}.input:focus{outline:none;border-color:#8b5cf680;box-shadow:0 0 0 3px #8b5cf61f,0 1px 2px #00000026}.badge{@apply inline-flex items-center gap-1.5 px-2.5 py-0.5 rounded-full text-[11px] font-medium;border:1px solid;letter-spacing:.01em}.badge-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0}.badge-dot--pulse{animation:badge-pulse 2s ease-in-out infinite}.skeleton{background:linear-gradient(90deg,#1a1a1f 25%,#222228,#1a1a1f 75%);background-size:400px 100%;animation:shimmer 1.8s linear infinite;border-radius:6px}.sidebar-item{@apply flex items-center gap-2.5 px-3 py-2 rounded-[8px] text-[13px] text-muted cursor-pointer select-none relative;transition:background-color var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out)}.sidebar-item:hover{background:#ffffff0a;color:#a1a1aa}.sidebar-item.active{background:#8b5cf614;color:#a78bfa;font-weight:500}.sidebar-item.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:16px;border-radius:0 3px 3px 0;background:#8b5cf6}.page-header{@apply h-14 flex items-center justify-between px-6 border-b border-surface-border shrink-0;}.page-title{@apply text-[15px] font-semibold text-white tracking-tight;}.modal-overlay{@apply fixed inset-0 z-50 flex items-center justify-center p-4;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fade-in-overlay var(--motion-moderate) var(--ease-standard) both}.modal-card{@apply bg-surface-elevated border border-surface-border-strong rounded-2xl w-full max-w-lg p-6;box-shadow:0 8px 40px #00000080,0 0 0 1px #ffffff0a;animation:slide-up var(--motion-moderate) var(--ease-out) both}.form-label{@apply block text-[12px] font-medium mb-1.5;color:#a1a1aa;letter-spacing:0}}.login-panel-left{animation:login-panel-left-enter .5s cubic-bezier(.16,1,.3,1) both}.login-logo{animation:login-fade-up .4s cubic-bezier(.16,1,.3,1) 80ms both}.login-headline{animation:login-fade-up .4s cubic-bezier(.16,1,.3,1) .2s both}.login-subhead{animation:login-fade-up .4s cubic-bezier(.16,1,.3,1) .28s both}.login-feature{animation:login-fade-up .35s cubic-bezier(.16,1,.3,1) both}.login-feature-icon{animation:login-icon-bounce .4s cubic-bezier(.34,1.56,.64,1) both}.login-register-field{animation:field-slide-in .25s cubic-bezier(.16,1,.3,1) both;overflow:hidden}.login-panel-right{animation:login-fade-in .45s cubic-bezier(.16,1,.3,1) .1s both}.login-form-heading{animation:login-fade-up .4s cubic-bezier(.16,1,.3,1) .2s both}.login-tab-toggle{animation:login-fade-up .35s cubic-bezier(.16,1,.3,1) .28s both}.login-field-1{animation:login-fade-up .35s cubic-bezier(.16,1,.3,1) .34s both}.login-field-2{animation:login-fade-up .35s cubic-bezier(.16,1,.3,1) .4s both}.login-submit{animation:login-btn-enter .35s cubic-bezier(.16,1,.3,1) .46s both}.login-footer{animation:login-fade-in .3s cubic-bezier(.16,1,.3,1) .52s both}@layer utilities{.animate-stagger-1{animation-delay:60ms}.animate-stagger-2{animation-delay:.12s}.animate-stagger-3{animation-delay:.18s}.animate-stagger-4{animation-delay:.24s}}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{@apply bg-surface-border rounded-full;}::-webkit-scrollbar-thumb:hover{@apply bg-muted/40;}.cursor-blink:after{content:"▋";animation:cursor-blink 1s step-end infinite;@apply text-brand ml-0.5;}input:-webkit-autofill,input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 100px #131316 inset!important;-webkit-text-fill-color:#f4f4f5!important}select option{background:#1a1a1f;color:#f4f4f5}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
