/* medienmatrixx Website-Monitor · Phase 1 · UI-Erweiterung
   Nur zusätzliche Selektoren. Kein Eingriff in app.css oder topbar.css. */

/* Website-Detailnavigation */
.mmx-site-tabs {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 9px;
    margin: 4px 0 23px;
}
.mmx-site-tab {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-height: 43px;
    padding: 10px 19px;
    border: 1px solid var(--purple, #4000ff);
    border-radius: 9999px;
    background: #fff;
    color: var(--purple, #4000ff);
    font-size: 13px;
    line-height: 1.2;
    font-weight: 650;
    text-decoration: none;
    white-space: nowrap;
    transition: color .18s ease, background-color .18s ease, border-color .18s ease;
}
.mmx-site-tab[href]:hover,
.mmx-site-tab[href]:focus-visible,
.mmx-site-tab.is-active {
    background: #161519;
    border-color: #161519;
    color: #fff;
    text-decoration: none;
}
.mmx-site-tab[href]:focus-visible {
    outline: 2px solid var(--purple, #4000ff);
    outline-offset: 3px;
}
.mmx-site-tab.is-pending {
    color: #898a93;
    background: #f4f4f6;
    border-color: #d5d5df;
    cursor: not-allowed;
    user-select: none;
}

/* Website-Aktionen in der Dashboard-Tabelle */
.site-table .mmx-site-actions {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 7px;
    min-width: 105px;
}
.site-table .mmx-site-actions form {
    margin: 0;
    width: 100%;
}
.mmx-action-button {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-height: 34px;
    padding: 7px 13px;
    border: 1px solid var(--purple, #4000ff);
    border-radius: 9999px;
    background: #fff;
    color: var(--purple, #4000ff);
    font-size: 12px;
    font-weight: 650;
    line-height: 1.3;
    text-decoration: none;
    text-align: center;
    white-space: nowrap;
    cursor: pointer;
    transition: color .18s ease, background-color .18s ease, border-color .18s ease;
}
.mmx-action-button:hover,
.mmx-action-button:focus-visible {
    background: #161519;
    border-color: #161519;
    color: #fff;
    text-decoration: none;
}
.mmx-action-button:focus-visible {
    outline: 2px solid var(--purple, #4000ff);
    outline-offset: 2px;
}
.site-table .mmx-site-actions .mmx-action-button {width:100%;}
.mmx-site-links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 20px;
}
.mmx-site-stats .mmx-stat-text {
    font-size: clamp(15px, 1.6vw, 21px);
    line-height: 1.4;
    overflow-wrap: anywhere;
}
.mmx-site-overview p { overflow-wrap: anywhere; }
@media (max-width: 640px) {
    .mmx-site-tabs { gap: 7px; }
    .mmx-site-tab { min-height: 39px; padding: 9px 13px; font-size: 12px; }
    .mmx-site-links .mmx-action-button { flex: 1 1 auto; }
}

/* Bedienaktionen der Technikseite ebenfalls pillenförmig. */
.mmx-phase1-check-button { border-radius: 9999px; }

/* Phase 1 · Update Manager */
.mmx-update-panel { margin-top: 18px; }
.mmx-update-panel h3 { margin-bottom: 16px; }
.mmx-update-panel .mmx-update-scroll { border-top: 1px solid var(--line,#dedee5); border-radius: 12px; }
.mmx-update-table { min-width: 780px; }
.mmx-update-table td { padding: 12px; }
.mmx-update-table td strong { font-size: 13px; }
.mmx-update-table td small { max-width: 240px; overflow-wrap: anywhere; }
.mmx-update-table .pill { white-space: normal; text-align: center; }
.mmx-update-help { margin-top: 18px; }
.mmx-update-help form { margin: 0; }

/* Phase 1 v1.1.7: Update-Zähler, angelehnt an die vorhandenen Karten. */
.stats.mmx-phase1-stats {grid-template-columns:repeat(3,minmax(0,1fr));}
.site-table small.mmx-phase1-update-count {color:#845900;font-weight:650;}
@media (max-width:900px) {.stats.mmx-phase1-stats {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:430px) {.stats.mmx-phase1-stats {grid-template-columns:repeat(2,minmax(0,1fr));}}


/* Phase 1 v1.1.8 · Security basis, matching the existing pill buttons and cards. */
.stats.mmx-phase1-stats {grid-template-columns:repeat(4,minmax(0,1fr));}
.stats.mmx-security-stats {grid-template-columns:repeat(3,minmax(0,1fr));}
.mmx-security-panel {margin-top:18px;}
.mmx-security-info {border-collapse:collapse;width:100%;max-width:860px;font-size:14px;}
.mmx-security-info th,.mmx-security-info td {border-bottom:1px solid var(--line,#dedee5);padding:12px 10px;text-align:left;vertical-align:top;overflow-wrap:anywhere;}
.mmx-security-info th {width:220px;font-weight:650;color:var(--muted,#626672);}
.mmx-security-actions {display:flex;gap:10px;flex-wrap:wrap;margin-top:18px;}
.site-table small.mmx-security-warning {color:#9c4d11;font-weight:650;}
@media(max-width:1000px) {.stats.mmx-phase1-stats {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:720px) {.stats.mmx-security-stats {grid-template-columns:1fr;}}
@media(max-width:640px) {.mmx-security-info th{width:44%;}}

/* Phase 1 v1.1.9: Wordfence Intelligence */
.mmx-wfi-settings { max-width:none; }
.mmx-wfi-settings form { margin:1.5em 0; }
.mmx-wfi-settings .mmx-action-button {cursor:pointer; }
.mmx-wfi-table { min-width:880px; }
.mmx-wfi-table td { vertical-align:top; }
.mmx-wfi-attribution {color:#626672; font-size:11px; padding:6px 14px 12px!important;}
.mmx-wfi-table td a {display:inline-block; margin-top:6px; color:var(--purple,#4000ff);}


/* Phase 1 v1.1.10: kompakte Statuskarten, auch auf 13-Zoll-Displays einzeilig. */
.stats.mmx-security-stats .stat {min-width:0;}
.stats.mmx-security-stats .stat strong.mmx-stat-text {
    font-size:clamp(13px,1.35vw,20px);
    line-height:1.3;
    letter-spacing:-.012em;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    display:block;
}
@media (max-width:1000px) and (min-width:721px) {
    .stats.mmx-security-stats {grid-template-columns:repeat(2,minmax(0,1fr));}
}

/* Meldungen bleiben farbige Textlinks, ohne Hover-Effekt oder Unterstreichung. */
.site-table a.mmx-site-signal,
.site-table a.mmx-site-signal:link,
.site-table a.mmx-site-signal:visited,
.site-table a.mmx-site-signal:hover,
.site-table a.mmx-site-signal:active {
    display:block;
    width:fit-content;
    max-width:100%;
    margin-top:3px;
    text-decoration:none;
    background:none;
    border:0;
    font-size:11px;
    font-weight:650;
    line-height:1.4;
}
.site-table a.mmx-phase1-update-count,
.site-table a.mmx-phase1-update-count:visited,
.site-table a.mmx-phase1-update-count:hover {color:#845900;}
.site-table a.mmx-security-warning,
.site-table a.mmx-security-warning:visited,
.site-table a.mmx-security-warning:hover {color:#9c4d11;}
.site-table a.mmx-site-signal:focus-visible {
    outline:2px solid var(--purple,#4000ff);
    outline-offset:3px;
    border-radius:3px;
}

/* Prüfen ist bewusst grün. Orange bleibt für Warnungen reserviert. */
.site-table .mmx-site-actions .mmx-action-button--check,
#check-all,
.mmx-phase1-check-button {
    background:#e5f6e9;
    color:#17663b;
    border-color:#25854c;
}
.site-table .mmx-site-actions .mmx-action-button--check:hover,
.site-table .mmx-site-actions .mmx-action-button--check:focus-visible,
#check-all:hover:not(:disabled),
#check-all:focus-visible,
.mmx-phase1-check-button:hover,
.mmx-phase1-check-button:focus-visible {
    background:#17663b;
    color:#fff;
    border-color:#17663b;
    filter:none;
}

/* Aufgeräumtes Dashboard nach Ausblendung der Versionsspalte. */
.site-table:has(.mmx-site-actions) {min-width:870px;}

/* Passwort-Auge direkt im Feld; semantischer Button ohne sichtbaren Infotext. */
.mmx-password-wrap {position:relative;display:block;width:100%;margin-top:7px;}
.mmx-password-wrap input.mmx-password-input {
    width:100%;
    margin-top:0;
    padding-right:52px;
}
.mmx-password-toggle {
    position:absolute;
    top:50%;right:8px;
    transform:translateY(-50%);
    display:inline-flex;
    justify-content:center;
    align-items:center;
    width:36px;height:36px;
    padding:0;
    border:0;border-radius:8px;
    background:transparent;color:#616675;
    cursor:pointer;
}
.mmx-password-toggle:hover {background:#f0f0f4;color:#24252a;}
.mmx-password-toggle:focus-visible {outline:2px solid var(--purple,#4000ff);outline-offset:1px;}
.mmx-password-toggle svg {display:block;width:20px;height:20px;}

/* Löschaktion für das Systemprotokoll, ohne die Backups anzutasten. */
.mmx-system-log-header {display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:16px;}
.mmx-system-log-header h3 {margin-bottom:6px;}
.mmx-system-log-header .hint {margin-bottom:0;}
.mmx-system-log-header form {margin:0;}
.mmx-system-log-clear {background:#fff2ef;border-color:#c64735;color:#a32720;}
.mmx-system-log-clear:hover,.mmx-system-log-clear:focus-visible {background:#a32720;border-color:#a32720;color:#fff;}

/* v1.1.13 · Kompakte, inhaltsorientierte Dashboard-Spalten.
   Frühere starre Prozentbreiten entfernt. Nur die Dashboard-Haupttabelle
   wird beeinflusst; Update-, Sicherheits- und andere Tabellen bleiben intakt. */
.site-table:has(> tbody > tr.site-row) {
    width: 100%;
    min-width: 1100px;
    max-width: none;
    table-layout: auto;
}
.site-table:has(> tbody > tr.site-row) th,
.site-table:has(> tbody > tr.site-row) td {
    padding-left: 11px;
    padding-right: 11px;
}
/* Bevorzugte Breiten; der Browser passt sie je nach verfügbarem Platz an.
   Website | WordPress | Builder | Status | Verbindung | Links | Aktion */
.site-table:has(> tbody > tr.site-row) :is(th,td):nth-child(1) { width: 200px; }
.site-table:has(> tbody > tr.site-row) :is(th,td):nth-child(2) { width: 85px; white-space: nowrap; }
.site-table:has(> tbody > tr.site-row) :is(th,td):nth-child(3) { width: 95px; }
.site-table:has(> tbody > tr.site-row) :is(th,td):nth-child(4) { width: 55px; white-space: nowrap; }
.site-table:has(> tbody > tr.site-row) :is(th,td):nth-child(5) { width: 220px; white-space: nowrap; }
.site-table:has(> tbody > tr.site-row) :is(th,td):nth-child(6) { width: 95px; white-space: nowrap; }
.site-table:has(> tbody > tr.site-row) :is(th,td):nth-child(7) { width: 180px; }
.site-table:has(> tbody > tr.site-row) td:first-child .site-name {
    max-width: 100%;
    overflow-wrap: anywhere;
}
.site-table:has(> tbody > tr.site-row) .builder-line { white-space: nowrap; }
.site-table:has(> tbody > tr.site-row) .mmx-site-actions { min-width: 0; width: 100%; }

/* Verbindungsstatus: Symbol und Prüfzeit nebeneinander, vertikal zentriert. */
.site-table:has(> tbody > tr.site-row) td:nth-child(5) > .status-icon,
.site-table:has(> tbody > tr.site-row) td:nth-child(5) > small.checked {
    display: inline-block;
    vertical-align: middle;
    margin-top: 0;
}
.site-table:has(> tbody > tr.site-row) td:nth-child(5) > small.checked {
    margin-left: 8px;
    white-space: nowrap;
}

/* Meldungs-Textlinks ausschließlich beim Hover bzw. Tastaturfokus unterstreichen. */
.site-table a.mmx-site-signal:hover,
.site-table a.mmx-site-signal:focus-visible {
    text-decoration: underline;
    text-underline-offset: 2px;
}

/* Phase 1 · Site Health: compact technical diagnostic table */
.mmx-sitehealth .table-scroll {border: 1px solid var(--line); border-radius: 12px; overflow-x:auto;}
.mmx-sitehealth-table {min-width: 580px; width:100%; table-layout:auto;}
.mmx-sitehealth-table th,.mmx-sitehealth-table td {padding: 12px 16px; vertical-align: middle;}
.mmx-sitehealth-table th:nth-child(2),.mmx-sitehealth-table td:nth-child(2) {white-space:nowrap;}
.mmx-sitehealth-refresh {margin: 14px 0 24px;}


/* Phase 1 v1.1.15 · Einheitliche Detailansichten gemäß Sicherheitstab. */
.mmx-site-tabs {
    margin-top: 4px;
    margin-bottom: 18px;
}
.stats.mmx-detail-stats {
    gap: 13px;
    margin-top: 0;
    margin-bottom: 18px;
}
.stats.mmx-detail-stats .stat {
    min-width: 0;
    min-height: 92px;
    padding: 16px 18px;
    gap: 4px;
}
.stats.mmx-detail-stats .stat > span {
    font-size: 12px;
    line-height: 1.45;
}
.stats.mmx-detail-stats .stat > strong,
.stats.mmx-detail-stats .stat > strong.mmx-stat-text {
    display: block;
    max-width: 100%;
    font-size: clamp(14px, 1.2vw, 18px);
    font-weight: 690;
    line-height: 1.35;
    letter-spacing: -.012em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    overflow-wrap: normal;
}
/* Karten stehen direkt nach der Tab-Navigation; darunter nur ein definierter Abstand. */
.stats.mmx-detail-stats + .panel,
.stats.mmx-detail-stats + .notice + .panel {
    margin-top: 0;
}
.mmx-site-tabs + .panel,
.mmx-site-tabs + .mmx-update-panel {
    margin-top: 0;
}
/* Die zusätzliche Diagnose-Aktion steht innerhalb der weißen Karte. */
.mmx-sitehealth-refresh {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 18px 0 0;
}
.mmx-sitehealth-refresh .mmx-phase1-check-button {
    min-height: 34px;
    border-radius: 9999px;
    padding: 7px 13px;
    font-size: 12px;
    font-weight: 650;
}
.mmx-sitehealth .hint {
    margin-top: 16px;
    margin-bottom: 0;
}
@media (max-width: 1000px) {
    .stats.mmx-detail-stats {grid-template-columns: repeat(2, minmax(0, 1fr));}
}
@media (max-width: 640px) {
    .stats.mmx-detail-stats {grid-template-columns: 1fr;}
    .stats.mmx-detail-stats .stat {min-height: 75px;}
}


/* Phase 1 v1.1.16 · Deutlicherer Website-Kopf in allen Detail-Tabs. */
.mmx-detail-header {
    margin: 8px 0 14px;
}
.mmx-site-chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 48px;
    padding: 11px 18px;
    border: 1px solid #2c00d6;
    border-radius: 16px;
    background: var(--purple, #4000ff);
    color: #fff;
    text-decoration: none;
    font-size: clamp(22px, 2vw, 28px);
    font-weight: 720;
    letter-spacing: -0.025em;
    line-height: 1.2;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.15);
    overflow-wrap: anywhere;
}
.mmx-site-chip:hover,
.mmx-site-chip:focus-visible {
    background: #161519;
    border-color: #161519;
    color: #fff;
    text-decoration: none;
}
.mmx-site-chip:focus-visible {
    outline: 2px solid var(--purple, #4000ff);
    outline-offset: 3px;
}
@media (max-width: 640px) {
    .mmx-detail-header { margin-bottom: 12px; }
    .mmx-site-chip {
        width: 100%;
        justify-content: center;
        font-size: 20px;
        padding: 10px 14px;
    }
}


/* v1.1.19 · Einheitlicher violetter Hintergrund mit 30 Prozent Deckkraft. */
:root {
    --bg: rgba(153, 116, 255, .3);
    --muted: #444444;
}

/* Halbtransparenter Seitenhintergrund auf Weiß. */
html { background: #fff; }

/* Überschriften, Hinweise und Footer sind auch auf dem kräftigen Verlauf lesbar. */
.main > .page-row h2 {
    color: #24252a;
}
.main > .page-row .muted,
.main > p.muted,
.main > p.hint,
.main > .footer-note,
.main > .legend,
.footer,
.footer a {
    color: var(--muted, #444444);
}

/* Alle Schaltflächen verwenden denselben vollständig runden Radius.
   Icon-Buttons bleiben durch gleiche Höhe und Breite kreisrund. */
button,
.button,
a.button,
.mmx-action-button,
.mmx-site-tab,
.hero-nav-button,
.topbar .topbar-button,
.mmx-site-chip,
.mmx-password-toggle,
.links a {
    border-radius: 9999px !important;
}

/* Dashboard: ohne WordPress- und Builder-Statusspalten, sowie ohne separaten Technik-Button. */
.site-table:has(> tbody > tr.site-row) {
    table-layout: fixed;
    width: 100%;
    min-width: 960px;
}
.site-table:has(> tbody > tr.site-row) :is(th,td):nth-child(1) {width: 27%;}
.site-table:has(> tbody > tr.site-row) :is(th,td):nth-child(2) {width: 25%;white-space: normal;}
.site-table:has(> tbody > tr.site-row) :is(th,td):nth-child(3) {width: 22%;white-space: nowrap;}
.site-table:has(> tbody > tr.site-row) :is(th,td):nth-child(4) {width: 9%;white-space: nowrap;}
.site-table:has(> tbody > tr.site-row) :is(th,td):nth-child(5) {width: 17%;white-space: normal;}
.site-table:has(> tbody > tr.site-row) td:nth-child(2) .builder-line {
    white-space: normal;
    overflow-wrap: anywhere;
}
.site-table:has(> tbody > tr.site-row) td:nth-child(3) > .status-icon,
.site-table:has(> tbody > tr.site-row) td:nth-child(3) > small.checked {
    display: inline-block;
    vertical-align: middle;
    margin-top: 0;
}
.site-table:has(> tbody > tr.site-row) td:nth-child(3) > small.checked {
    margin-left: 8px;
    white-space: nowrap;
}

/* Technik: Ein klarer Abstand zwischen Prüfen-Schaltfläche und Erklärung. */
.mmx-tech-check-form {margin-bottom:0;}
.panel p.mmx-tech-help {
    display: block;
    margin-top: 22px !important;
    margin-bottom: 0;
    line-height: 1.55;
}


/* v1.1.19 · Dashboard mit WordPress-Version, Builder-Status VOR dem Namen. */
.site-table:has(> tbody > tr.site-row) {
    width: 100%;
    min-width: 1040px;
    table-layout: fixed;
}
.site-table:has(> tbody > tr.site-row) :is(th,td):nth-child(1) { width: 23%; white-space: normal; }
.site-table:has(> tbody > tr.site-row) :is(th,td):nth-child(2) { width: 12%; white-space: nowrap; }
.site-table:has(> tbody > tr.site-row) :is(th,td):nth-child(3) { width: 20%; white-space: normal; }
.site-table:has(> tbody > tr.site-row) :is(th,td):nth-child(4) { width: 23%; white-space: nowrap; }
.site-table:has(> tbody > tr.site-row) :is(th,td):nth-child(5) { width: 8%; white-space: nowrap; }
.site-table:has(> tbody > tr.site-row) :is(th,td):nth-child(6) { width: 14%; white-space: normal; }
.site-table:has(> tbody > tr.site-row) .mmx-wp-version,
.site-table:has(> tbody > tr.site-row) .builder-line {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 7px;
    min-height: 28px;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.45;
}
.site-table:has(> tbody > tr.site-row) .builder-line { white-space: normal; }
.site-table:has(> tbody > tr.site-row) .builder-line > span:last-child { overflow-wrap: anywhere; }
.site-table:has(> tbody > tr.site-row) .mmx-wp-version .status-icon,
.site-table:has(> tbody > tr.site-row) .builder-line .status-icon {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    font-size: 18px;
    line-height: 1;
}
/* Verbindung: Status und Zeit auf einer Zeile, dieselbe Schriftgröße wie Builder/WordPress. */
.site-table:has(> tbody > tr.site-row) td:nth-child(4) > .status-icon,
.site-table:has(> tbody > tr.site-row) td:nth-child(4) > small.checked {
    display: inline-block;
    vertical-align: middle;
    margin-top: 0;
}
.site-table:has(> tbody > tr.site-row) td:nth-child(4) > small.checked {
    margin-left: 8px;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.45;
    color: var(--ink, #24252a);
    white-space: nowrap;
}
/* Website-Link ausschließlich hier 20px, alle übrigen Buttons bleiben pillenförmig. */
a.mmx-site-chip { border-radius: 20px !important; }

/* HTTP-Status: Signalfarbe, Code und kurze Erläuterung. */
.mmx-tech-stats .mmx-http-result {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 7px;
    min-width: 0;
    margin-top: 2px;
    line-height: 1.4;
}
.mmx-tech-stats .mmx-http-icon {
    flex: 0 0 auto;
    font-size: clamp(14px, 1.2vw, 18px);
    line-height: 1;
}
/* Wert und Symbol exakt so groß wie die Werte der übrigen drei Statuskarten. */
.mmx-tech-stats .mmx-http-code {
    flex: 0 0 auto;
    font-size: clamp(14px, 1.2vw, 18px);
    font-weight: 690;
    line-height: 1.35;
}
.mmx-tech-stats .mmx-http-desc {
    color: var(--muted, #444444);
    font-size: 12px;
    font-weight: 400;
    line-height: 1.45;
    overflow-wrap: anywhere;
}


/* v1.1.21: Alle lesenden Prüf-/Aktualisierungsaktionen wie der Dashboard-Prüfen-Button.
   Navigations-, Bearbeiten- und Installationsbuttons bleiben unverändert. */
button.button.primary.mmx-phase1-check-button,
button.mmx-phase1-check-button,
button#check-all,
.site-table .mmx-site-actions button.mmx-action-button--check {
    background: #e5f6e9 !important;
    color: #17663b !important;
    border-color: #25854c !important;
    border-radius: 9999px !important;
}
button.button.primary.mmx-phase1-check-button:hover:not(:disabled),
button.button.primary.mmx-phase1-check-button:focus-visible,
button.mmx-phase1-check-button:hover:not(:disabled),
button.mmx-phase1-check-button:focus-visible,
button#check-all:hover:not(:disabled),
button#check-all:focus-visible,
.site-table .mmx-site-actions button.mmx-action-button--check:hover:not(:disabled),
.site-table .mmx-site-actions button.mmx-action-button--check:focus-visible {
    background: #17663b !important;
    color: #fff !important;
    border-color: #17663b !important;
    filter: none !important;
}

/* Uptime history shares the existing panel and table style. */
.mmx-uptime-panel .mmx-uptime-head {display:flex;align-items:center;flex-wrap:wrap;column-gap:24px;row-gap:4px;}
.mmx-uptime-panel .mmx-uptime-head p {margin:6px 0;}
.mmx-uptime-panel .mmx-uptime-pending {color:#8b600b;}
.mmx-uptime-panel .mmx-uptime-stats {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0;}
.mmx-uptime-panel .mmx-uptime-stats article {display:flex;flex-direction:column;gap:4px;min-width:0;border:1px solid var(--line,#dedee5);border-radius:12px;padding:13px 16px;}
.mmx-uptime-panel .mmx-uptime-stats span {color:var(--muted,#444);font-size:12px;}
.mmx-uptime-panel .mmx-uptime-stats strong {font-size:18px;font-weight:690;}
.mmx-uptime-panel .mmx-uptime-stats small {color:var(--muted,#444);font-size:12px;}
.mmx-uptime-panel .mmx-uptime-disclaimer {margin:14px 0 16px;}
.mmx-uptime-panel h4 {margin:22px 0 10px;font-size:15px;}
.mmx-uptime-panel .table-scroll {border:1px solid var(--line,#dedee5);border-radius:12px;}
.mmx-uptime-event-table {min-width:570px;width:100%;}
.mmx-uptime-event-table :is(th,td) {padding:10px 12px;}
.mmx-uptime-event-table :is(th,td):first-child {width:190px;white-space:nowrap;}
@media(max-width:700px) {.mmx-uptime-panel .mmx-uptime-stats {grid-template-columns:1fr;}}


/* Phase 1 v1.1.22 · Verlauf: aligns with the existing details tabs and cards. */
.mmx-history-panel {margin-top:0;}
.mmx-history-panel > p.muted {margin-top:0;}
.mmx-history-filters {display:flex;flex-wrap:wrap;align-items:flex-end;gap:13px;margin:22px 0 15px;}
.mmx-history-panel .mmx-history-filters label {display:flex;flex-direction:column;gap:5px;margin:0;font-size:12px;font-weight:650;color:#444;min-width:146px;}
.mmx-history-filters select {min-height:38px;padding:8px 11px;border:1px solid #cbd0db;border-radius:10px;background:#fff;color:#24252a;font-size:13px;}
.mmx-history-filters .mmx-action-button {min-height:38px;}
.mmx-history-count {font-size:13px;font-weight:650;color:#444;}
.mmx-history-scroll {border:1px solid var(--line,#dedee5);border-radius:12px;}
.mmx-history-table {min-width:780px;}
.mmx-history-table th,.mmx-history-table td {padding:13px 12px;vertical-align:top;}
.mmx-history-table .mmx-history-time {white-space:nowrap;font-variant-numeric:tabular-nums;}
.mmx-history-table .mmx-history-status {white-space:nowrap;}
.mmx-history-table td strong {font-weight:650;}
.mmx-history-table td small {display:block;margin-top:4px;color:#555;font-size:12px;line-height:1.5;overflow-wrap:anywhere;}
.mmx-history-pagination {display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:20px 0;}
.mmx-history-pagination > span {font-size:13px;color:#444;}
.mmx-history-explanation {margin:17px 0 0!important;line-height:1.55;}
@media(max-width:640px) {.mmx-history-filters label {flex:1 1 135px;}.mmx-history-filters select {width:100%;}}


/* 1.1.23 · Einheitliche Statuskarten mit vollständigen Informationen. */
.stats .stat {
    border: 1px solid rgba(64,0,255,.22);
    background: #fff;
    border-radius: 16px;
    min-width: 0;
}
.stats.mmx-detail-stats .stat > strong,
.stats.mmx-detail-stats .stat > strong.mmx-stat-text,
.stats.mmx-security-stats .stat > strong,
.stats.mmx-phase1-stats .stat > strong {
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
    overflow-wrap: anywhere;
    max-width: 100%;
}
.stats .stat .mmx-stat-detail {
    display: block;
    color: #50565b;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.45;
    margin-top: 4px;
    white-space: normal;
    overflow-wrap: anywhere;
}
.mmx-uptime-panel .mmx-uptime-stats article {
    border: 1px solid rgba(64,0,255,.22);
    background: #fff;
}
/* Lesbare, stabile segmentierte Detailnavigation. */
.mmx-site-tabs {
    display: flex;
    flex-wrap: nowrap;
    width: max-content;
    max-width: 100%;
    align-items: stretch;
    gap: 7px;
    padding: 6px;
    margin: 4px 0 23px;
    border-radius: 15px;
    background: #fff;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: thin;
    -webkit-overflow-scrolling: touch;
}
.mmx-site-tabs .mmx-site-tab,
.mmx-site-tabs a.mmx-site-tab,
.mmx-site-tabs span.mmx-site-tab {
    box-sizing: border-box;
    flex: 0 0 auto;
    display: inline-flex;
    gap: 9px;
    align-items: center;
    justify-content: center;
    padding: 12px 17px;
    min-height: 45px;
    background: #e9e9ec;
    border: 1px solid transparent;
    border-radius: 12px !important;
    color: #444444;
    text-decoration: none;
    font-size: 14px;
    font-weight: 650;
    transition: background .18s ease, color .18s ease;
}
.mmx-site-tabs .mmx-tab-icon { display:block; width:18px; height:18px; flex:0 0 18px; }
.mmx-site-tabs a.mmx-site-tab[href]:hover,
.mmx-site-tabs a.mmx-site-tab[href]:focus-visible {
    background: #9974ff;
    color: #fff;
    border-color: #9974ff;
}
.mmx-site-tabs a.mmx-site-tab.is-active,
.mmx-site-tabs a.mmx-site-tab.is-active:hover,
.mmx-site-tabs a.mmx-site-tab.is-active:focus-visible {
    background: #4000ff;
    border-color: #4000ff;
    color: #fff;
}
.mmx-site-tabs .mmx-site-tab.is-pending,
.mmx-site-tabs .mmx-site-tab.is-pending:hover {
    background: #e9e9ec;
    color: #aaaab1;
    border-color: transparent;
    cursor: not-allowed;
}
@media(max-width:640px) {
    .mmx-site-tabs {gap:5px;padding:5px;}
    .mmx-site-tabs .mmx-site-tab {padding:10px 13px;min-height:40px;font-size:13px;}
    .mmx-site-tabs .mmx-tab-icon {width:16px;height:16px;flex-basis:16px;}
}
/* Dashboard-Sortierung direkt an der Website-Spaltenüberschrift. */
.mmx-website-th {display:flex;align-items:center;gap:7px;}
.mmx-sort-menu {position:relative;display:inline-block;}
.mmx-sort-menu summary {
    display:flex;align-items:center;justify-content:center;
    width:26px;height:26px;
    border-radius:9999px;cursor:pointer;list-style:none;
    border:1px solid #d6c9ff;background:#fff;color:#4000ff;
}
.mmx-sort-menu summary::-webkit-details-marker {display:none;}
.mmx-sort-menu summary:hover,.mmx-sort-menu[open] summary {background:#f0e9ff;border-color:#4000ff;}
.mmx-sort-menu summary svg {width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
/* Popup is positioned through JS to escape the table's horizontal scroll container. */
.mmx-sort-options {
    display:flex;flex-direction:column;gap:2px;
    min-width:185px;padding:7px;background:#fff;border:1px solid #d4c8ed;
    border-radius:12px;box-shadow:0 5px 20px rgba(42,26,75,.13);
    z-index:2000;
}
.mmx-sort-options a {display:block;padding:9px 11px;color:#35353b;text-decoration:none;white-space:nowrap;font-weight:550;font-size:13px;border-radius:7px;}
.mmx-sort-options a:hover,.mmx-sort-options a:focus-visible {background:#e9e0ff;color:#4000ff;}
.mmx-sort-options a[aria-current=true] {font-weight:750;color:#4000ff;}
/* Protokolle: genau fünf vollständige Einträge sichtbar, ab dann intern scrollbar. */
.mmx-scroll-five {scrollbar-width:thin;overscroll-behavior:contain;}
.mmx-scroll-five[data-mmx-overflow=true] {overflow-y:auto;}
/* Für Tabellen Sticky-Header, damit die Spaltenzuordnung beim Scrollen sichtbar bleibt. */
.mmx-scroll-five .site-table thead th {position:sticky;top:0;z-index:1;}
.mmx-list-heading {display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin:14px 0;}
.mmx-list-heading p {margin:0;}
.mmx-log-actions {display:flex;justify-content:flex-end;margin:12px 0 15px;}
.mmx-log-actions .mmx-system-log-clear,.mmx-list-heading .mmx-system-log-clear {white-space:normal;}
/* Abstand nach Kopieraktionen, gemeinsame Regel für vergleichbare Info-Karten. */
.cron-copy > button[data-copy] + p.hint,
.mmx-wfi-settings > button[data-copy] + p.hint,
.mmx-wfi-settings button[data-copy] + p.hint {margin-top:22px !important;line-height:1.55;}
