@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";:root{--surface:#0a0a0a;--surface-dim:#050505;--surface-bright:#171717;--surface-container-lowest:#000;--surface-container-low:#0a0a0a;--surface-container:#121212;--surface-container-high:#171717;--surface-container-highest:#1f1f1f;--on-surface:#fafafa;--on-surface-variant:#a1a1aa;--inverse-surface:#e2e2e5;--inverse-on-surface:#2f3133;--outline:#3f3f46;--outline-variant:#27272a;--primary:#00f1fe;--on-primary:#000;--primary-container:#004a4f;--on-primary-container:#ddfcff;--inverse-primary:#005bc0;--secondary:#00c4ce;--on-secondary:#000;--secondary-container:#004246;--on-secondary-container:#ddfcff;--error:#ef4444;--on-error:#fff;--error-container:#7f1d1d;--on-error-container:#fca5a5;--background:#000;--on-background:#fafafa;--surface-variant:#18181b;--panel-bg:#050505;--modal-bg:#0a0a0a;--border-color:#1f1f1f;--font-sans:"Inter", sans-serif;--font-mono:"JetBrains Mono", monospace;--unit:4px;--gutter:16px;--radius-sm:.125rem;--radius:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-full:9999px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--background);color:var(--on-background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}.display-lg{letter-spacing:-.02em;font-size:48px;font-weight:700;line-height:56px}.headline-lg{letter-spacing:-.01em;font-size:32px;font-weight:600;line-height:40px}.title-md{font-size:18px;font-weight:600;line-height:24px}.body-md{font-size:14px;font-weight:400;line-height:20px}.label-sm{font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;font-size:12px;font-weight:500;line-height:16px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--background)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:var(--radius)}::-webkit-scrollbar-thumb:hover{background:var(--outline-variant)}.btn{border-radius:var(--radius);font-family:var(--font-sans);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;padding:8px 16px;font-size:14px;font-weight:500;transition:all .2s;display:inline-flex}.btn-primary{background-color:var(--primary-container);color:var(--on-primary-container);border:1px solid var(--primary)}.btn-primary:hover{background-color:var(--primary);box-shadow:0 0 8px #adc7ff66}.btn-secondary{color:var(--on-surface-variant);border:1px solid var(--border-color);background-color:#0000}.btn-secondary:hover{color:var(--on-surface);border-color:var(--outline)}.btn-danger{background-color:var(--error-container);color:var(--on-error-container);border:1px solid var(--error)}.btn-danger:hover{background-color:var(--error);color:var(--on-error)}.input-container{gap:var(--unit);flex-direction:column;width:100%;display:flex}.input-label{color:var(--on-surface-variant);margin-bottom:4px}.input-field{background-color:var(--panel-bg);color:var(--on-surface);border:1px solid var(--border-color);border-radius:var(--radius);font-family:var(--font-sans);outline:none;padding:8px 12px;font-size:14px;transition:border-color .2s,box-shadow .2s}.input-field:focus{border-color:var(--primary);box-shadow:inset 0 0 4px #adc7ff33}.card{background-color:var(--panel-bg);border:1px solid var(--border-color);border-radius:var(--radius);flex-direction:column;display:flex;overflow:hidden}.card-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:16px;font-weight:600;display:flex}.card-body{flex-direction:column;gap:16px;padding:16px;display:flex}.status-chip{border-radius:var(--radius-full);font-family:var(--font-mono);text-transform:uppercase;align-items:center;padding:2px 8px;font-size:12px;font-weight:500;display:inline-flex}.status-online,.status-starting{color:var(--secondary-fixed-dim);background-color:#00dbe71a}.status-offline,.status-stopping{color:var(--error);background-color:#ffb4ab1a}.status-deploying{color:var(--tertiary-fixed-dim);background-color:#ffb6951a}.app-container{width:100%;min-height:100vh;display:flex}.sidebar{background-color:var(--panel-bg);border-right:1px solid var(--border-color);flex-direction:column;flex-shrink:0;width:240px;display:flex}.sidebar-nav{flex-direction:column;gap:4px;padding:16px 8px;display:flex}.sidebar-link{border-radius:var(--radius);color:var(--on-surface-variant);align-items:center;gap:12px;padding:8px 16px;font-weight:500;transition:all .2s;display:flex}.sidebar-link:hover{color:var(--on-surface);background-color:#ffffff0d;text-decoration:none}.sidebar-link.active{color:var(--primary);border-left:2px solid var(--primary);background-color:#adc7ff1a}.main-content{background-color:var(--background);flex-direction:column;flex:1;min-width:0;display:flex}.topbar{border-bottom:1px solid var(--border-color);background-color:var(--panel-bg);justify-content:space-between;align-items:center;height:64px;padding:0 24px;display:flex}.page-content{flex:1;padding:32px;overflow-y:auto}.flex{display:flex}.flex-col{flex-direction:column;display:flex}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:8px}.gap-4{gap:16px}.text-muted{color:var(--on-surface-variant)}.context-menu-container{display:inline-block;position:relative}.context-menu-trigger{color:var(--on-surface-variant);cursor:pointer;border-radius:var(--radius);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex}.context-menu-trigger:hover{color:var(--on-surface);background:#ffffff0d}.context-menu-dropdown{background-color:var(--modal-bg);border:1px solid var(--border-color);border-radius:var(--radius);z-index:50;flex-direction:column;gap:4px;min-width:160px;margin-top:4px;padding:8px;display:flex;position:absolute;top:100%;right:0;box-shadow:0 4px 12px #00000080}.context-menu-item{color:var(--on-surface);font-family:var(--font-sans);text-align:left;cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;align-items:center;gap:8px;padding:8px 12px;font-size:14px;transition:background .2s;display:flex}.context-menu-item:hover{background-color:var(--surface-variant)}.context-menu-item.text-error{color:var(--error)}
