:root{--bg: #F3F4F8;--bg-raised: #FFFFFF;--card: #FFFFFF;--card-solid: #FFFFFF;--card-hover: #F5F6FA;--card-selected: rgba(37, 80, 232, .06);--glass: rgba(255, 255, 255, .92);--glass-border: rgba(0, 0, 0, .08);--border: #E2E4EB;--border-subtle: #EEEFF3;--border-active: rgba(37, 80, 232, .4);--accent: #2550E8;--accent-bright: #2550E8;--accent-dim: #1E42C4;--accent-glow: rgba(37, 80, 232, .07);--accent-glow-strong: rgba(37, 80, 232, .14);--success: #059669;--success-dim: rgba(5, 150, 105, .1);--warning: #B45309;--warning-dim: rgba(180, 83, 9, .1);--danger: #DC2626;--danger-dim: rgba(220, 38, 38, .08);--purple: #7C3AED;--purple-dim: rgba(124, 58, 237, .1);--teal: #0D7490;--teal-dim: rgba(13, 116, 144, .1);--text: #111827;--text-secondary: #374151;--text-tertiary: #6B7280;--text-ghost: #9CA3AF;--font: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, sans-serif;--mono: "JetBrains Mono", "SF Mono", monospace;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--viewport-footer-gap: calc(32px + env(safe-area-inset-bottom, 0px)) ;--shadow-card: 0 1px 3px rgba(0,0,0,.04), 0 2px 8px rgba(0,0,0,.03);--shadow-elevated: 0 2px 8px rgba(0,0,0,.06), 0 12px 32px rgba(0,0,0,.06);--shadow-glow: 0 0 20px rgba(37, 80, 232, .08)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}button,a,[role=button],select,label[for],summary{cursor:pointer}html{height:100%}#root{display:flex;flex-direction:column;min-height:100vh}body{font-family:var(--font);background:var(--bg);color:var(--text);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}@keyframes pulse-live{0%,to{opacity:1;box-shadow:0 0 #05966959}50%{opacity:.5;box-shadow:0 0 0 4px #05966900}}@keyframes fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-in-right{0%{opacity:0;transform:translate(6px)}to{opacity:1;transform:translate(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.99)}to{opacity:1;transform:scale(1)}}@keyframes progress-pulse{0%,to{opacity:.6}50%{opacity:1}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes glow-pulse{0%,to{box-shadow:0 0 12px #4a72f580,0 0 28px #4a72f54d,0 0 44px #4a72f526;transform:scale(1)}50%{box-shadow:0 0 24px #4a72f5cc,0 0 52px #4a72f580,0 0 80px #4a72f540,0 0 110px #4a72f51a;transform:scale(1.02)}}.glow-btn{animation:glow-pulse 1.4s ease-in-out infinite}.animate-in{animation:fade-in .6s cubic-bezier(.4,0,.2,1) both}.animate-slide{animation:slide-in-right .55s cubic-bezier(.4,0,.2,1) both}.animate-scale{animation:scale-in .5s cubic-bezier(.4,0,.2,1) both}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--success);animation:pulse-live 2s ease-in-out infinite;display:inline-block;flex-shrink:0}.mono{font-family:var(--mono)}.badge{display:inline-flex;align-items:center;border-radius:6px;padding:3px 10px;font-size:11.5px;font-weight:600;letter-spacing:.2px;white-space:nowrap;transition:background .2s ease,color .2s ease}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);padding:20px;box-shadow:var(--shadow-card);transition:border-color .3s ease,box-shadow .3s ease,transform .3s ease}.card-elevated{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:22px;box-shadow:var(--shadow-elevated);transition:border-color .3s ease,box-shadow .3s ease,transform .3s ease}.card-interactive:hover{transform:translateY(-1px);box-shadow:var(--shadow-elevated);border-color:var(--border-active)}.section-header{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;color:var(--text-tertiary);margin-bottom:16px;display:flex;align-items:center;gap:8px}.section-header:before{content:"";width:3px;height:14px;border-radius:2px;background:var(--accent);flex-shrink:0}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cfd2da;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#b0b4bf}::selection{background:#2550e826}
