@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;700&family=Inter:wght@300;400;500;600;700;800&display=swap";@tailwind base;@tailwind components;@tailwind utilities;:root{--bg-dark: #09090b;--bg-card: #0f0f12;--bg-card-hover: #18181b;--accent-primary: #3b82f6;--accent-danger: #ef4444;--accent-warning: #f59e0b;--accent-success: #22c55e;--glass-border: rgba(255, 255, 255, .04);--glass-bg: rgba(15, 15, 18, .95);--glass-highlight: rgba(255, 255, 255, .02)}body{background-color:var(--bg-dark);background-image:none;color:#a1a1aa;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow:hidden;-webkit-font-smoothing:antialiased;letter-spacing:-.01em}.font-mono{font-family:JetBrains Mono,monospace;letter-spacing:-.02em}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px;transition:background .2s}::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.glass-panel{background:var(--glass-bg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--glass-border);box-shadow:0 4px 30px #0000001a}.glass-panel-heavy{background:#050505d9;backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border-right:1px solid var(--glass-border)}@keyframes pulse-subtle{0%,to{opacity:1}50%{opacity:.6}}.animate-pulse-subtle{animation:pulse-subtle 2s ease-in-out infinite}.text-xxs{font-size:.625rem;line-height:1rem}.border-premium{border-color:var(--glass-border)}.text-shadow-sm{text-shadow:0 1px 2px rgba(0,0,0,.5)}.text-shadow-glow{text-shadow:0 0 10px currentColor}.stream-card-enter{opacity:0;transform:scale(.95)}.stream-card-enter-active{opacity:1;transform:scale(1);transition:opacity .3s ease-out,transform .3s ease-out}.score-transition{transition:color .4s ease-out}video{transition:opacity .3s ease-out}video[data-loading=true]{opacity:.5}@keyframes status-pulse{0%,to{box-shadow:0 0 0 0 currentColor;opacity:1}50%{box-shadow:0 0 0 4px transparent;opacity:.7}}.status-critical{animation:status-pulse 1.5s ease-in-out infinite}.panel-slide{transition:transform .3s cubic-bezier(.4,0,.2,1)}input:focus,button:focus{outline:none;box-shadow:0 0 0 2px #3b82f64d}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:200px 0}}.skeleton{background:linear-gradient(90deg,#1f1f23,#2a2a2f,#1f1f23);background-size:200px 100%;animation:shimmer 1.5s infinite linear}@keyframes subtitle-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.subtitle-enter{animation:subtitle-in .3s ease-out}
