{$t('dashboard.title')} - {$t('app.name')}
{#snippet heroToolbar()} {$t('dashboard.quickDeploy')} {/snippet}
{$t('dashboard.totalProjects')} {String(totalProjects).padStart(2, '0')} active
{$t('dashboard.runningInstances')} {String(totalRunning).padStart(2, '0')} instances
{$t('dashboard.failedInstances')} 0}>{String(totalFailed).padStart(2, '0')} need attention
{$t('dashboard.staleContainers')} 0}>{String(totalStale).padStart(2, '0')} stale → {$t('dashboard.totalSites')} {String(totalSites).padStart(2, '0')} {#if deployedSites > 0}{deployedSites} up{/if} {#if failedSitesCount > 0}{failedSitesCount} fail{/if} {#if deployedSites === 0 && failedSitesCount === 0}static sites →{/if}
{#if unusedImagesExceeded}

{$t('dashboard.unusedImagesWarning')}

{unusedImagesCount} {$t('dashboard.unusedImages')} · {unusedImagesMB >= 1024 ? (unusedImagesMB / 1024).toFixed(1) + ' GB' : unusedImagesMB + ' MB'}

{$t('settings.pruneImages')} →
{/if} {#if !loading} {#snippet sitesActions()} {#if sites.length > 0} {$t('dashboard.viewAllSites')} → {/if} {/snippet} 0 ? String(sites.length) : ''} actions={sitesActions} > {#if sites.length === 0} {:else} {/if} {/if} 0 ? String(projects.length) : ''} > {#if loading}
{#each Array(3) as _} {/each}
{:else if error}

{error}

{:else if projects.length === 0} {:else}
{#each projects as project (project.id)} {/each}
{/if}