:root{--cubic-premium:cubic-bezier(.16, 1, .3, 1);--theme-transition:all .2s var(--cubic-premium);--color-primary:#7c3aed;--color-on-primary:#fff;--color-secondary:#a78bfa;--color-accent:#f43f5e;--color-background:#0f0f23;--color-foreground:#e2e8f0;--color-muted:#27273b;--color-border:#4c1d95;--color-destructive:#ef4444;--color-ring:#7c3aed;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px #0000001a;--shadow-lg:0 10px 15px #0000001a;--shadow-xl:0 20px 25px #00000026}html,body,#root{height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-background);color:var(--color-foreground);margin:0;font-family:Fira Sans,Plus Jakarta Sans,Outfit,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}code{font-family:Fira Code,source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.3s ease-out forwards fadeIn}.gradient-text{background:linear-gradient(135deg,#7c3aed 0%,#a78bfa 50%,#f43f5e 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-weight:800;display:inline-block}.glow-indicator{align-items:center;display:inline-flex;position:relative}.glow-indicator:after{content:"";background-color:#10b981;border-radius:50%;width:8px;height:8px;margin-left:8px}.glow-indicator-offline:after{content:"";background-color:#ef4444;border-radius:50%;width:8px;height:8px;margin-left:8px}.hover-scale{transition:all .25s cubic-bezier(.4,0,.2,1)!important}.hover-scale:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)!important;border-color:#7c3aed4d!important}.timeline-connector{position:relative}.timeline-connector:after{content:"";z-index:0;background:#7c3aed33;width:2px;position:absolute;top:40px;bottom:-20px;left:19px}.timeline-connector-last:after{display:none}.equip-slot-box{aspect-ratio:1;cursor:pointer;transition:all .2s var(--cubic-premium);background:#0000004d;border:1px solid #ffffff1a;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.equip-slot-box:hover{background:#ffffff0d;border-color:#7c3aed80}.equip-slot-box img{object-fit:contain;filter:drop-shadow(0 2px 4px #00000080);width:70%;height:70%;transition:transform .2s var(--cubic-premium)}.equip-slot-box:hover img{transform:scale(1.05)}.crt-overlay{position:relative}.crt-overlay:before{content:" ";z-index:2;pointer-events:none;opacity:.1;background:linear-gradient(#12101000 50%,#00000026 50%) 0 0/100% 4px;display:block;position:absolute;inset:0}.btn-primary{background:var(--color-primary);color:var(--color-on-primary);transition:all .2s var(--cubic-premium);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-sm);border:none;border-radius:8px;padding:10px 20px;font-family:Fira Code,monospace;font-weight:600;display:inline-flex}.btn-primary:hover{background:#6d28d9;transform:translateY(-1px)}.btn-secondary{color:var(--color-primary);border:1px solid var(--color-primary);transition:all .2s var(--cubic-premium);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-sm);background:0 0;border-radius:8px;padding:9px 19px;font-family:Fira Code,monospace;font-weight:600;display:inline-flex}.btn-secondary:hover{background:#7c3aed1a;transform:translateY(-1px)}.card{-webkit-backdrop-filter:blur(24px);padding:var(--space-lg);transition:all .2s var(--cubic-premium);background:#11121db8;border:1px solid #ffffff0f;border-radius:12px}.input{color:var(--color-foreground);transition:all .2s var(--cubic-premium);background:#0003;border:1px solid #ffffff1a;border-radius:8px;padding:10px 14px;font-family:Fira Code,monospace;font-size:14px}.input:focus{border-color:var(--color-primary);background:#0000004d;outline:none}.monospace-data{font-variant-numeric:tabular-nums;font-family:Fira Code,monospace}.glass-premium,.erp-glass-panel,.erp-glow-card{-webkit-backdrop-filter:blur(24px);background:#11121db8;border:1px solid #ffffff0f;border-radius:12px}
