@php
    $h = 'font-display text-base font-semibold text-ink';
    $p = 'text-sm leading-relaxed text-ink-2';
    $code = 'rounded bg-inset px-1.5 py-0.5 font-mono text-[12px] text-accent-text';
    $cmd = 'block w-full overflow-x-auto rounded-md border border-line bg-void px-3 py-2 font-mono text-[12px] text-accent-text';
    $real = 'mt-1 font-mono text-[11px] leading-relaxed text-ink-3';
@endphp

<div class="space-y-3">
    <h3 class="{{ $h }}">Befehle / CLI</h3>
    <p class="{{ $p }}">Auf dem Host richtet der Installer den Befehl <code class="{{ $code }}">clusev</code> ein. Er kapselt die langen Docker-Kommandos — du musst dir weder Compose-Datei noch Container-Namen merken. Per SSH einloggen und von überall <code class="{{ $code }}">clusev &lt;befehl&gt;</code> tippen. <code class="{{ $code }}">clusev help</code> zeigt die Übersicht.</p>
</div>

<div class="space-y-4">
    <div class="space-y-1">
        <pre class="{{ $cmd }}">sudo clusev update</pre>
        <p class="{{ $p }}">Holt die neueste Version, baut das Image neu (inkl. CSS/JS) und wendet Datenbank-Migrationen an. Braucht root (<code class="{{ $code }}">sudo</code>). Secrets und die konfigurierte Domain bleiben erhalten; das Panel ist ein bis zwei Minuten kurz nicht erreichbar.</p>
        <p class="{{ $real }}">→ führt <span class="text-ink-2">update.sh</span> aus (git pull + Image-Rebuild + migrate)</p>
    </div>

    <div class="space-y-1">
        <pre class="{{ $cmd }}">clusev reset-admin</pre>
        <p class="{{ $p }}">Setzt den Admin-Zugang zurück: entfernt den zweiten Faktor (2FA), sodass beim nächsten Login ein neues Passwort gesetzt werden kann. Letzter Ausweg, wenn Passwort und 2FA verloren sind (siehe <span class="text-ink">Konto-Wiederherstellung</span>).</p>
        <p class="{{ $real }}">→ <span class="text-ink-2">docker compose exec app php artisan clusev:reset-admin</span></p>
    </div>

    <div class="space-y-1">
        <pre class="{{ $cmd }}">clusev restart</pre>
        <p class="{{ $p }}">Startet den Stack neu (alle Container) und wendet Konfigurationsänderungen an, ohne neu zu bauen.</p>
        <p class="{{ $real }}">→ <span class="text-ink-2">docker compose up -d</span></p>
    </div>

    <div class="space-y-1">
        <pre class="{{ $cmd }}">clusev logs</pre>
        <p class="{{ $p }}">Folgt den Live-Logs des Stacks (z. B. zur Fehlersuche). Mit einem Dienstnamen dahinter — etwa <code class="{{ $code }}">clusev logs app</code> — nur dessen Logs. Strg-C beendet.</p>
        <p class="{{ $real }}">→ <span class="text-ink-2">docker compose logs -f</span></p>
    </div>

    <div class="space-y-1">
        <pre class="{{ $cmd }}">clusev ps</pre>
        <p class="{{ $p }}">Zeigt, welche Dienste laufen (Alias: <code class="{{ $code }}">clusev status</code>). Schneller Gesundheits-Check des Stacks.</p>
        <p class="{{ $real }}">→ <span class="text-ink-2">docker compose ps</span></p>
    </div>

    <div class="space-y-1">
        <pre class="{{ $cmd }}">clusev migrate</pre>
        <p class="{{ $p }}">Wendet ausstehende Datenbank-Migrationen an. Normalerweise erledigt das <code class="{{ $code }}">clusev update</code> automatisch — dieser Befehl ist für den seltenen manuellen Fall.</p>
        <p class="{{ $real }}">→ <span class="text-ink-2">docker compose exec app php artisan migrate --force</span></p>
    </div>

    <div class="space-y-1">
        <pre class="{{ $cmd }}">clusev artisan &lt;...&gt;</pre>
        <p class="{{ $p }}">Für Fortgeschrittene: reicht ein beliebiges artisan-Kommando in den app-Container durch, etwa <code class="{{ $code }}">clusev artisan about</code>.</p>
        <p class="{{ $real }}">→ <span class="text-ink-2">docker compose exec app php artisan &lt;...&gt;</span></p>
    </div>
</div>
