/* Custom CharGraph Styling */

:root {
    --md-primary-fg-color: #3b82f6;
    --md-accent-fg-color: #8b5cf6;
}

/* Schlichte Checkmarks - schwarz/weiß statt bunt */
.md-typeset {
    filter: grayscale(0.3);
}

.md-typeset code,
.md-typeset pre,
.md-typeset table {
    filter: none;
}

/* Grid Cards Styling */
.grid.cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 1.5rem;
    margin: 2rem 0;
}

.grid.cards > * {
    background: var(--md-default-bg-color);
    border: 1px solid var(--md-default-fg-color--lightest);
    border-radius: 0.5rem;
    padding: 1.5rem;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.grid.cards > *:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
    border-color: var(--md-primary-fg-color);
}

/* Enhanced Admonitions */
.md-typeset .admonition {
    border-radius: 0.5rem;
    border-left-width: 4px;
}

/* Code Block Enhancements */
.md-typeset pre > code {
    border-radius: 0.5rem;
}

/* Better Link Styling */
.md-typeset a {
    text-decoration: none;
    border-bottom: 2px solid transparent;
    transition: border-color 0.2s;
}

.md-typeset a:hover {
    border-bottom-color: var(--md-primary-fg-color);
}

/* Table Enhancements */
.md-typeset table:not([class]) {
    border-radius: 0.5rem;
    overflow: hidden;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.md-typeset table:not([class]) th {
    background: var(--md-default-fg-color--lightest);
    color: var(--md-default-fg-color);
    font-weight: 600;
    border-bottom: 2px solid var(--md-default-fg-color--lighter);
}

/* Icon Enhancements */
.md-typeset .lg {
    font-size: 2rem;
}

.md-typeset .middle {
    vertical-align: middle;
}

/* Smooth Scrolling */
html {
    scroll-behavior: smooth;
}

/* Better Blockquotes */
.md-typeset blockquote {
    border-left-color: var(--md-primary-fg-color);
    background: var(--md-code-bg-color);
    border-radius: 0 0.5rem 0.5rem 0;
    padding: 1rem 1.5rem;
}

/* Permalink-Symbol (¶) entfernen */
.md-typeset .headerlink {
    display: none;
}

/* Ausgewählte Überschriften fett darstellen */
.md-typeset h1:target,
.md-typeset h2:target,
.md-typeset h3:target,
.md-typeset h4:target {
    font-weight: 700 !important;
}

/* Alle Listenelemente untereinander darstellen */
.md-typeset ul li,
.md-typeset ol li {
    display: list-item !important;
    list-style-type: disc;
}

.md-typeset ul ul li,
.md-typeset ol ul li {
    list-style-type: circle;
}

.md-typeset ul ul ul li,
.md-typeset ol ul ul li {
    list-style-type: square;
}
