/*
 * NhPanel – VPS-Zusatzfunktionen (Firewall-Karte auf dem Reiter "Netzwerk", Resources/views/vps/firewall.twig).
 * Wird auf allen Kontoseiten geladen, greift nur unter .nh-shell-page. Nur Tokens/Komponenten aus panel.css.
 */

.nh-shell-page .nh-vps-fw-intro { color: var(--nh-muted); }

/* lange Werte (Kommentar, Netze, Portlisten) umbrechen statt die Seite zu verbreitern */
.nh-shell-page .nh-vps-fw-table td { overflow-wrap: anywhere; vertical-align: middle; }
.nh-shell-page .nh-vps-fw-managed { margin-left: 6px; white-space: normal; }
/* Ohne Aktionsspalte (nur Anzeige) ist "Kommentar" die letzte Spalte: panel.css macht letzte Zellen schmal und einzeilig
   (für Knöpfe gedacht) – hier darf der Text umbrechen, sonst läuft die Markierung "Vom System verwaltet" aus der Karte */
.nh-shell-page .nh-shell-content .nh-vps-fw-table td:last-child:not(.text-end) { width: auto; white-space: normal; }

/* Trefferflächen mindestens 44 px */
.nh-shell-page .nh-vps-fw-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.nh-shell-page .nh-vps-fw-actions .btn,
.nh-shell-page .nh-vps-modal .modal-footer .btn { min-height: 44px; }
.nh-shell-page .nh-vps-fw-del { min-width: 44px; min-height: 44px; }
.nh-shell-page .nh-vps-modal .form-control,
.nh-shell-page .nh-vps-modal .form-select { min-height: 44px; }
.nh-shell-page .nh-vps-fw-confirm { display: flex; gap: 10px; align-items: flex-start; padding-left: 0; }
.nh-shell-page .nh-vps-fw-confirm .form-check-input { flex: 0 0 auto; float: none; width: 22px; height: 22px; margin: 2px 0 0; }
.nh-shell-page .nh-vps-fw-summary { overflow-wrap: anywhere; }

@media (max-width: 575.98px) {
    .nh-shell-page .nh-vps-fw-actions .btn { width: 100%; }
    .nh-shell-page .nh-vps-modal .modal-footer .btn { flex: 1 1 100%; }
}

/* Selbstbedienung und Support: zwei kurze Absätze unter der Regelliste */
.nh-shell-page .nh-vps-fw-scope { display: grid; grid-template-columns: max-content 1fr; gap: 6px 16px; margin: 16px 0 0; padding-top: 14px; border-top: 1px solid var(--nh-line); font-size: .9rem; }
.nh-shell-page .nh-vps-fw-scope dt { color: var(--nh-ink); font-weight: 650; }
.nh-shell-page .nh-vps-fw-scope dd { margin: 0; color: var(--nh-muted); overflow-wrap: anywhere; }
.nh-shell-page .nh-vps-fw-quick { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
.nh-shell-page .nh-vps-fw-quick form { margin: 0; }
.nh-shell-page .nh-vps-fw-quick .btn { min-height: 44px; }
@media (max-width: 575.98px) {
    .nh-shell-page .nh-vps-fw-scope { grid-template-columns: 1fr; gap: 2px; }
    .nh-shell-page .nh-vps-fw-scope dd { margin-bottom: 8px; }
    .nh-shell-page .nh-vps-fw-quick .btn { width: 100%; }
    .nh-shell-page .nh-vps-fw-quick form { flex: 1 1 100%; }
}
