.terminal-window:hover {
    border-color: #3f3f46;
    box-shadow: 0 0 0 1px rgba(255,255,255,0.1), 0 0 40px rgba(255,255,255,0.03);
    transform: translateY(-4px);
}

.stat-glow {
    text-shadow: 0 0 20px rgba(255,255,255,0.3);
    transition: text-shadow 0.3s ease, color 0.3s ease;
}

.stat-container:hover .stat-glow {
    text-shadow: 0 0 30px color-mix(in srgb, var(--theme-inline-accent) 55%, transparent);
    color: var(--theme-inline-accent);
}

.nav-link::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 1px;
    background: var(--theme-inline-accent);
    transition: width 0.3s ease;
}

.nav-link:hover::after {
    width: 100%;
}

.category-badge {
    transition: transform 0.3s ease;
}

.category-badge:hover {
    transform: scale(1.05);
}

.post-card {
    transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.post-card:hover {
    transform: translateY(-6px);
}

.post-card:hover .post-card-image {
    transform: scale(1.05);
}

.post-card-image {
    transition: transform 0.6s ease;
}

dialog[open],
dialog.dialog-legacy-open {
    display: flex;
    align-items: center;
    justify-content: center;
    animation: modalFadeIn 0.25s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

dialog.dialog-legacy-open {
    position: fixed;
    inset: 0;
    background-color: var(--theme-dialog-backdrop);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    z-index: 90;
}

@keyframes modalFadeIn {
    from { opacity: 0; transform: scale(0.98) translateY(8px); }
    to { opacity: 1; transform: scale(1) translateY(0); }
}

html[data-theme="light"] .terminal-window:hover {
    box-shadow: 0 0 0 1px rgba(93,94,83,0.06), 0 24px 48px rgba(53,49,38,0.12);
}

html[data-theme="light"] .article-content table tr:hover td {
    background: rgba(95,111,92,0.08);
}
