@import "https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700&family=JetBrains+Mono:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&display=swap";:root{--color-bg:#050709;--color-surface:#08090e;--color-surface-2:#0d1018;--color-surface-3:#141b26;--color-border:#ffffff12;--color-border-mid:#ffffff21;--color-border-strong:#ffffff38;--color-accent:#3b82f6;--color-accent-dim:#3b82f624;--color-accent-gradient:linear-gradient(135deg, #3b82f6 0%, #6366f1 100%);--color-accent-glow:#3b82f640;--color-lime:#a8ff3e;--color-lime-dim:#a8ff3e1a;--color-cyan:#06d6a0;--color-red:#ff4560;--color-amber:#ffbe0b;--color-green:#4ade80;--color-text:#ecf0f5;--color-text-2:#7d8ba0;--color-text-3:#384152;--font-display:"Space Grotesk", sans-serif;--font-body:"Space Grotesk", sans-serif;--font-mono:"JetBrains Mono", monospace;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px;--radius-sm:2px;--radius-md:4px;--radius-lg:8px;--radius-xl:12px;--radius-full:9999px;--shadow-card:0 1px 3px #0009, 0 2px 8px #0006;--shadow-card-hover:0 0 0 1px #3b82f64d, 0 4px 24px #00000080;--shadow-glow:0 0 32px #3b82f640;--shadow-glow-lime:0 0 24px #a8ff3e33;--transition-fast:.12s ease;--transition-base:.2s ease;--transition-slow:.36s ease;--z-dropdown:100;--z-modal:200;--z-toast:300;--z-tooltip:400}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-body);background-color:var(--color-bg);color:var(--color-text);background-image:radial-gradient(#ffffff0a 1px,#0000 1px);background-size:28px 28px;background-attachment:fixed;min-height:100vh;line-height:1.6}#root{flex-direction:column;min-height:100vh;display:flex}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--color-text);line-height:1.15}a{color:var(--color-accent);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--color-text)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:2px}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:var(--color-surface)}::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:2px}::-webkit-scrollbar-thumb:hover{background:#fff3}::selection{color:var(--color-text);background:#3b82f647}img{max-width:100%;height:auto}code,pre{font-family:var(--font-mono)}input,textarea,select,button{font-family:inherit;font-size:inherit}button{cursor:pointer;background:0 0;border:none}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.container{width:100%;max-width:1320px;padding:0 var(--space-8);margin:0 auto}@media (width<=768px){.container{padding:0 var(--space-5)}}@keyframes ticker{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes blink-cursor{0%,to{opacity:1}50%{opacity:0}}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.3)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.skeleton{background:linear-gradient(90deg, var(--color-surface) 25%, var(--color-surface-2) 50%, var(--color-surface) 75%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.4s infinite shimmer}.status-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block}.status-dot--running{background:var(--color-lime);box-shadow:0 0 6px var(--color-lime);animation:2s ease-in-out infinite pulse-dot}.status-dot--stopped{background:var(--color-text-3)}.status-dot--error{background:var(--color-red)}.status-dot--provisioning{background:var(--color-amber);animation:1s ease-in-out infinite pulse-dot}.status-dot--suspended{background:var(--color-amber)}.page-enter{animation:.28s forwards fade-in}.glass{-webkit-backdrop-filter:blur(12px);border:1px solid var(--color-border);background:#ffffff08}.gradient-text{background:var(--color-accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}
