/* Light Mode for Blog Detail */
.blog-detail-container {
    transition: background-color 0.3s ease, color 0.3s ease;
}
@keyframes heartPulse {
    0% { transform: scale(1); }
    30% { transform: scale(1.6) rotate(-10deg); }
    50% { transform: scale(1.2) rotate(10deg); }
    70% { transform: scale(1.4) rotate(-5deg); }
    100% { transform: scale(1) rotate(0); }
}
.heart-anim {
    animation: heartPulse 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.text-liked {
    color: var(--accent-color, #00d2ff) !important;
}
.blog-detail-container.light-mode {
    background-color: #f8fafc !important;
    color: #1e293b !important;
    border: 1px solid #e2e8f0;
}
.blog-detail-container.light-mode .text-white {
    color: #1e293b !important;
}
.blog-detail-container.light-mode h1 {
    color: #0f172a !important;
}
.blog-detail-container.light-mode .text-muted {
    color: #64748b !important;
}
.blog-detail-container.light-mode hr {
    background-color: #cbd5e1 !important;
    opacity: 1 !important;
}
.blog-detail-container.light-mode pre {
    background-color: #f1f5f9 !important;
    color: #1e293b !important;
    border: 1px solid #e2e8f0 !important;
}

/* === Comment Section Styles === */
.comment-box {
    background-color: rgba(255, 255, 255, 0.03);
    transition: background-color 0.2s, border-color 0.2s;
}
.comment-box:hover {
    background-color: rgba(255, 255, 255, 0.06);
}
.comment-text {
    color: #cbd5e1;
    line-height: 1.6;
    white-space: pre-wrap;
    word-break: break-word;
}
.reply-text {
    color: #94a3b8;
    line-height: 1.5;
    white-space: pre-wrap;
    word-break: break-word;
}
.reply-box {
    background-color: rgba(255, 255, 255, 0.015);
    border: 1px solid rgba(255,255,255,0.05);
    transition: background-color 0.2s, border-color 0.2s;
}
.reply-box:hover {
    background-color: rgba(255, 255, 255, 0.04);
}
.comment-avatar {
    background: linear-gradient(135deg, rgba(0,210,255,0.2) 0%, rgba(58,123,213,0.2) 100%);
    border: 1px solid rgba(0,210,255,0.3);
}
.reply-avatar {
    background-color: rgba(255,255,255,0.05);
}
.reply-arrow-icon {
    color: rgba(255,255,255,0.15);
}
.reply-btn {
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.1);
    color: var(--text-secondary);
}
.reply-btn:hover {
    color: var(--accent-color) !important;
    border-color: rgba(0,210,255,0.3) !important;
}
.comment-form-box {
    background-color: rgba(0, 0, 0, 0.2);
    border: 1px solid var(--surface-border);
}
.comment-textarea {
    background: transparent;
    border: 1px solid var(--surface-border);
    color: var(--text-primary);
}
.comment-textarea:focus {
    border-color: var(--accent-color) !important;
    outline: none;
}
.reply-form-divider {
    border-top: 1px dashed rgba(255,255,255,0.1);
}
.cancel-btn:hover {
    background-color: rgba(255,255,255,0.05);
}

/* === Light Mode - Comments === */
.blog-detail-container.light-mode .comment-box {
    background-color: #f8fafc;
    border-left-color: var(--accent-color);
}
.blog-detail-container.light-mode .comment-box:hover {
    background-color: #f1f5f9;
}
.blog-detail-container.light-mode .comment-text {
    color: #334155;
}
.blog-detail-container.light-mode .reply-text {
    color: #475569;
}
.blog-detail-container.light-mode .reply-box {
    background-color: #f1f5f9;
    border-color: #e2e8f0;
}
.blog-detail-container.light-mode .reply-box:hover {
    background-color: #e2e8f0;
}
.blog-detail-container.light-mode .comment-avatar {
    background: linear-gradient(135deg, rgba(0,210,255,0.15) 0%, rgba(58,123,213,0.15) 100%);
    border-color: rgba(0,210,255,0.25);
}
.blog-detail-container.light-mode .reply-avatar {
    background-color: #e2e8f0;
}
.blog-detail-container.light-mode .reply-arrow-icon {
    color: #94a3b8;
}
.blog-detail-container.light-mode .reply-btn {
    background: #f1f5f9;
    border-color: #cbd5e1;
    color: #64748b;
}
.blog-detail-container.light-mode .reply-btn:hover {
    color: var(--accent-color) !important;
    border-color: rgba(0,210,255,0.4) !important;
    background: #e2e8f0;
}
.blog-detail-container.light-mode .comment-form-box {
    background-color: #f1f5f9;
    border-color: #e2e8f0;
}
.blog-detail-container.light-mode .comment-textarea {
    background: #ffffff;
    border-color: #cbd5e1;
    color: #1e293b;
}
.blog-detail-container.light-mode .reply-form-divider {
    border-top-color: #e2e8f0;
}
.blog-detail-container.light-mode .cancel-btn {
    color: #64748b;
}
.blog-detail-container.light-mode .cancel-btn:hover {
    background-color: #e2e8f0;
}
.blog-detail-container.light-mode .comments-section h3 {
    color: #0f172a !important;
}
.blog-detail-container.light-mode .empty-comments {
    color: #64748b !important;
}
/* Fix strong (usernames) and small (timestamps) in light mode */
.blog-detail-container.light-mode strong {
    color: #0f172a !important;
}
.blog-detail-container.light-mode small {
    color: #64748b !important;
}
.blog-detail-container.light-mode p,
.blog-detail-container.light-mode span,
.blog-detail-container.light-mode div {
    color: #334155;
}
/* Keep accent color elements intact */
.blog-detail-container.light-mode .fas.fa-check-circle,
.blog-detail-container.light-mode [style*="var(--accent-color)"] {
    color: var(--accent-color);
}
/* User avatar icon in light mode */
.blog-detail-container.light-mode .comment-avatar i,
.blog-detail-container.light-mode .reply-avatar i {
    color: var(--accent-color) !important;
}
.blog-detail-container.light-mode .reply-avatar i {
    color: #64748b !important;
}
/* Reply arrow in light mode */
.blog-detail-container.light-mode .reply-arrow-icon {
    color: #94a3b8 !important;
}
/* All text color in light mode */
.blog-detail-container.light-mode {
    color: #1e293b;
}

/* Styling for content generated by TinyMCE */
    .blog-content img {
        max-width: 100%;
        height: auto;
        border-radius: 8px;
        margin: 20px 0;
    }
    .blog-content h1, .blog-content h2, .blog-content h3 {
        margin-top: 30px;
        margin-bottom: 15px;
    }
    .blog-content a {
        color: #0d6efd;
        text-decoration: none;
    }
    .blog-content a:hover {
        text-decoration: underline;
    }
    .blog-content p {
        margin-bottom: 1.5rem;
    }
    
    .blog-content blockquote {
        border-left: 4px solid var(--accent-color, #00d2ff);
        background-color: rgba(0, 210, 255, 0.05);
        padding: 15px 20px;
        margin: 20px 0;
        border-radius: 0 8px 8px 0;
        color: #8da4be;
        font-style: italic;
        font-size: 1.1rem;
    }

    .blog-content pre {
        background-color: #0d1117;
        color: #c9d1d9;
        padding: 20px;
        border-radius: 8px;
        border: 1px solid #132238;
        overflow-x: auto;
        font-family: 'Consolas', 'Courier New', Courier, monospace;
        margin: 20px 0;
        font-size: 0.95rem;
    }
    
    .blog-content code {
        background-color: rgba(255, 255, 255, 0.1);
        padding: 2px 6px;
        border-radius: 4px;
        font-family: 'Consolas', 'Courier New', Courier, monospace;
        font-size: 0.9em;
        color: var(--accent-color, #00d2ff);
    }
    .blog-detail-container {
        margin: 40px auto;
        padding: 40px;
    }
    @media (max-width: 768px) {
        .blog-detail-container {
            margin: 20px auto !important;
            padding: 15px !important;
            width: 100% !important;
            border-radius: 0 !important;
        }
    }