.vgl-editorial-block {
    margin-block: var(--vgl-space-6);
}

.vgl-editorial-block--product {
    border: 1px solid var(--vgl-color-border);
    border-radius: var(--vgl-radius-lg);
    padding: var(--vgl-space-4);
    background: var(--vgl-color-bg-alt);
}

.vgl-editorial-block--slider {
    margin-block: var(--vgl-space-8);
}

.vgl-editorial-callout {
    border-left: 4px solid var(--vgl-color-primary);
    padding: var(--vgl-space-4) var(--vgl-space-5);
    background: var(--vgl-color-primary-soft);
    border-radius: 0 var(--vgl-radius) var(--vgl-radius) 0;
    margin-block: var(--vgl-space-6);
}

.vgl-editorial-callout--deal {
    border-left-color: var(--vgl-color-accent);
    background: var(--vgl-color-accent-soft);
}

/* AI-authored callout / info boxes (:::info, :::tipp, :::warnung, :::zitat) */
.vgl-callout {
    border-left: 4px solid var(--vgl-color-primary, #6366f1);
    padding: var(--vgl-space-4, 1rem) var(--vgl-space-5, 1.25rem);
    background: var(--vgl-color-primary-soft, #eef2ff);
    border-radius: 0 var(--vgl-radius, 8px) var(--vgl-radius, 8px) 0;
    margin-block: var(--vgl-space-6, 1.5rem);
}

.vgl-callout > :first-child {
    margin-top: 0;
}

.vgl-callout > :last-child {
    margin-bottom: 0;
}

.vgl-callout--info {
    border-left-color: var(--vgl-color-primary, #6366f1);
    background: var(--vgl-color-primary-soft, #eef2ff);
}

.vgl-callout--tip {
    border-left-color: var(--vgl-color-success, #16a34a);
    background: var(--vgl-color-success-soft, #ecfdf5);
}

.vgl-callout--warning {
    border-left-color: var(--vgl-color-warning, #d97706);
    background: var(--vgl-color-warning-soft, #fffbeb);
}

.vgl-callout--quote {
    border-left-color: var(--vgl-color-accent, #ec4899);
    background: var(--vgl-color-accent-soft, #fdf2f8);
    font-style: italic;
}

/* Tables produced by the markdown renderer */
.vgl-prose table,
.vgl-editorial-block table,
.post-content table {
    width: 100%;
    border-collapse: collapse;
    margin-block: var(--vgl-space-6, 1.5rem);
    font-size: 0.95em;
}

.vgl-prose table th,
.vgl-prose table td,
.vgl-editorial-block table th,
.vgl-editorial-block table td,
.post-content table th,
.post-content table td {
    border: 1px solid var(--vgl-color-border, #e5e7eb);
    padding: var(--vgl-space-2, 0.5rem) var(--vgl-space-3, 0.75rem);
    text-align: left;
    vertical-align: top;
}

.vgl-prose table th,
.vgl-editorial-block table th,
.post-content table th {
    background: var(--vgl-color-bg-alt, #f9fafb);
    font-weight: 600;
}

.vgl-prose table tbody tr:nth-child(even),
.vgl-editorial-block table tbody tr:nth-child(even),
.post-content table tbody tr:nth-child(even) {
    background: var(--vgl-color-bg-alt, #f9fafb);
}

/* Blockquotes used for key takeaways */
.vgl-prose blockquote,
.vgl-editorial-block blockquote,
.post-content blockquote {
    border-left: 4px solid var(--vgl-color-border, #e5e7eb);
    margin-inline: 0;
    padding: var(--vgl-space-2, 0.5rem) var(--vgl-space-5, 1.25rem);
    color: var(--vgl-color-text-muted, #4b5563);
    font-style: italic;
}

/* Automatic internal crosslinks */
.vgl-crosslink {
    text-decoration: underline;
    text-underline-offset: 2px;
}

.vgl-author-archive__header {
    display: flex;
    gap: var(--vgl-space-4);
    align-items: flex-start;
    margin-bottom: var(--vgl-space-6);
}

.vgl-author-archive__avatar {
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
}

.vgl-author-archive__bio {
    margin-top: var(--vgl-space-2);
    color: var(--vgl-color-text-muted, #555);
}

.vgl-author-archive__tags {
    margin-top: var(--vgl-space-2);
    font-size: 0.9rem;
    color: var(--vgl-color-text-muted, #666);
}
