/* 1. Kacheln als Flex-Spalte anordnen, damit alle Kacheln einer Reihe gleich hoch wirken */
.md-typeset .grid.cards > ul > li {
    display: flex;
    flex-direction: column;
}

/* 2. Button-Block immer bündig an den unteren Kachelrand drücken + 8px Abstand zwischen den Buttons */
.md-typeset .grid.cards > ul > li > p:last-child:has(.md-button) {
    margin-top: auto;
    padding-top: 0.6rem;
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

/* 3. Alle Buttons auf 100 % Kachelbreite, zentriert und mit edlem Hover-Effekt */
.md-typeset .grid.cards .md-button {
    width: 100%;
    box-sizing: border-box;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 0.45rem;
    margin: 0;
    text-align: center;
    background-color: rgba(0, 148, 133, 0.08);
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.md-typeset .grid.cards .md-button:hover,
.md-typeset .grid.cards .md-button:focus {
    background-color: var(--md-primary-fg-color);
    border-color: var(--md-primary-fg-color);
    color: var(--md-primary-bg-color);
}

/* 4. Mermaid Subgraph- & Cluster-Styling: Großzügige Abstände & abgerundete Ecken */
.mermaid .cluster rect {
    rx: 8px;
    ry: 8px;
}
.mermaid .cluster-label foreignObject {
    overflow: visible;
}
.mermaid .cluster-label foreignObject div {
    font-weight: 600 !important;
    letter-spacing: 0.3px;
}
