.breadcrumb a,.comment-reply-link,.footer-navigation a,.related-card a,.share-btn,.site-info a,.toc a{text-decoration:none}.breadcrumb ol{list-style:none;padding:0;margin:0 0 24px;display:flex;flex-wrap:wrap;font-size:.875rem;color:var(--text-light)}.breadcrumb li::after{content:"\203A";margin:0 12px;color:var(--border-color)}.breadcrumb a,.footer-navigation a:hover,.related-card a:hover,.toc a:hover{color:var(--primary-color)}.breadcrumb li:last-child::after{content:none}.breadcrumb a{font-weight:500}.breadcrumb a:hover{text-decoration:underline}.single-article{max-width:1200px;margin:0 auto}.entry-title{margin-bottom:15px}.entry-meta,.featured-image{margin-bottom:30px}.entry-meta{font-size:.9rem;color:#5f6368;padding-bottom:15px;border-bottom:1px solid var(--border-color)}.featured-image img{width:100%;height:auto;border-radius:8px}.entry-content{font-size:1.1rem}.entry-content h2,.entry-content h3{margin-top:1.5em}.entry-content p{margin-bottom:1.5em}.social-share{display:flex;align-items:center;gap:12px;margin:40px 0;padding-top:24px;border-top:1px solid var(--border-color)}.share-title{font-weight:700;font-size:.9rem;color:var(--text-light);text-transform:uppercase}.share-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;color:#fff;transition:transform .2s,filter .2s}.related-card a,.toc a,.toc-title{color:var(--text-color)}.share-btn:hover{transform:translateY(-3px);filter:brightness(1.1)}.share-facebook{background:#1877f2}.share-x{background:#000}.share-whatsapp{background:#25d366}.share-telegram{background:#08c}.author-box,.toc{background:var(--secondary-bg)}.share-btn svg{fill:white}.toc{padding:24px;border-radius:12px;margin-bottom:32px;border:1px solid var(--border-color)}.toc-title{font-weight:700;margin-bottom:16px;font-size:1.1rem}.toc ol{list-style:none;padding-left:0}.toc li{margin-bottom:8px}.toc li:last-child{margin-bottom:0}.toc .toc-level-3{padding-left:20px}.toc a{transition:color .2s}.author-box{display:flex;gap:20px;padding:30px;border-radius:8px;margin-top:40px}.author-avatar img,.comment-meta .avatar{border-radius:50%}.author-name{font-weight:700;margin-bottom:5px}.author-bio{font-size:.95rem}.comments-area,.related-posts{margin-top:60px;padding-top:40px;border-top:1px solid var(--border-color)}.related-title{margin-bottom:24px;font-weight:800}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}@media screen and (max-width:600px){.related-grid{grid-template-columns:1fr}}.related-card{display:flex;flex-direction:column}.related-image-link{display:block;aspect-ratio:16/9;overflow:hidden;border-radius:8px;margin-bottom:12px}.related-card img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.related-card:hover img{transform:scale(1.05)}.related-card h4{font-size:1rem;margin:0;line-height:1.4}.related-card a{font-weight:600}.comments-title{margin-bottom:32px;font-weight:800;font-size:1.5rem}.comment-list{list-style:none;padding:0;margin-bottom:40px}.comment{margin-bottom:24px;padding:24px;background:#fff;border:1px solid var(--border-color);border-radius:12px;transition:border-color .2s}.comment:hover{border-color:var(--primary-color)}.comment-meta{display:flex;align-items:center;gap:12px;margin-bottom:12px;font-size:.875rem;color:var(--text-light)}.comment-author cite{font-style:normal;font-weight:700;color:var(--text-color)}.comment-content{font-size:1rem;color:var(--text-color);line-height:1.6}.comment-reply-link{display:inline-block;margin-top:12px;font-size:.875rem;font-weight:600;color:var(--primary-color)}.comment-respond{padding:32px;background:var(--secondary-bg);border-radius:12px;border:1px solid var(--border-color)}.comment-reply-title{margin-bottom:24px;font-weight:800;font-size:1.25rem}.comment-form p{margin-bottom:20px}.comment-form label{display:block;margin-bottom:8px;font-weight:600;font-size:.9rem}.comment-form input[type=email],.comment-form input[type=text],.comment-form textarea{width:100%;padding:12px 16px;border:1px solid var(--border-color);border-radius:8px;font-family:inherit;font-size:1rem;transition:border-color .2s,box-shadow .2s}.footer-navigation ul,.pagination ul{display:flex;list-style:none;padding:0}.comment-form input:focus,.comment-form textarea:focus{outline:0;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(37,99,235,.1)}.form-submit input[type=submit]{background:var(--primary-color);color:#fff;padding:12px 32px;border:none;border-radius:8px;font-weight:700;cursor:pointer;transition:background .2s}.form-submit input[type=submit]:hover{background:var(--primary-hover)}.pagination{margin-top:60px}.pagination ul{justify-content:center;align-items:center;gap:8px}.pagination .page-numbers{display:flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 8px;border:1px solid var(--border-color);text-decoration:none;color:var(--text-color);border-radius:8px;font-weight:600;transition:.2s}.pagination .page-numbers:hover:not(.current){border-color:var(--primary-color);color:var(--primary-color);background:var(--accent-color)}.pagination .current{background:var(--primary-color);color:#fff;border-color:var(--primary-color);box-shadow:0 4px 6px -1px rgba(37,99,235,.2)}.site-footer,.site-info{border-top:1px solid var(--border-color)}.pagination .next,.pagination .prev{font-size:1.2rem}.category-description{background:#f8f9fa;padding:20px;border-left:4px solid var(--primary-color);margin-bottom:40px;font-style:italic}.site-footer{background:var(--secondary-bg);padding:60px 0 30px;margin-top:80px}.footer-navigation{margin-bottom:32px}.footer-navigation ul{justify-content:center;gap:24px;margin:0;flex-wrap:wrap}.footer-navigation a{color:var(--text-light);font-weight:500;font-size:.95rem;transition:color .2s}.site-info{text-align:center;font-size:.875rem;color:var(--text-light);padding-top:30px}.site-info a{color:var(--text-color);font-weight:600}

/* Forum Styles - Refined for "Open" look */
.forum-post-wrapper {
    display: flex;
    flex-direction: column;
    background: #fff;
    margin-bottom: 30px;
    border-radius: 0;
    overflow: hidden;
    border-bottom: 2px solid #f0f2f5;
}

.post-author-sidebar {
    background: transparent;
    padding: 15px 0;
    border-right: none;
    border-bottom: 1px solid #f1f3f5;
    display: flex;
    flex-direction: row;
    align-items: center;
    text-align: left;
    gap: 15px;
}

.author-avatar img {
    width: 50px;
    height: 50px;
    border-radius: 12px;
    margin-bottom: 0;
    border: none;
    box-shadow: none;
}

.author-name {
    display: inline-block;
    font-weight: 700;
    color: #1a73e8;
    margin-bottom: 0;
    font-size: 1.1rem;
}

.author-badge {
    font-size: 0.75rem;
    padding: 3px 10px;
    border-radius: 20px;
    background: #e8f0fe;
    color: #1a73e8;
    margin-bottom: 0;
    font-weight: 600;
}

.author-details {
    display: flex;
    align-items: center;
    gap: 15px;
    flex-wrap: wrap;
}

.author-meta {
    display: flex;
    gap: 20px;
    font-size: 0.85rem;
    color: #5f6368;
    margin-top: 0;
}

.author-meta strong {
    color: #3c4043;
}

.post-content-area {
    display: flex;
    flex-direction: column;
    padding: 0;
    width: 100%;
}

.post-header {
    background: transparent;
    padding: 10px 0;
    font-size: 0.9rem;
    color: #70757a;
    border-bottom: none;
    display: flex;
    justify-content: space-between;
}

.post-text {
    padding: 10px 0 20px;
    flex-grow: 1;
    line-height: 1.8;
    color: #3c4043;
    font-size: 1.1rem;
}

.author-signature {
    margin: 20px 0;
    padding-top: 20px;
    border-top: 1px solid #f1f3f5;
    font-size: 0.9rem;
    color: #70757a;
    font-style: italic;
}

.post-footer {
    padding: 15px 0;
    background: transparent;
    border-top: 1px solid #f1f3f5;
    display: flex;
    gap: 20px;
    font-size: 0.9rem;
}

.comment-reply-link, .comment-edit-link {
    color: #007bff;
    text-decoration: none;
    font-weight: 600;
}

.comment-list {
    list-style: none;
    padding: 0;
}

.forum-reply {
    list-style: none;
}

/* Single Article Adaptation */
.single-article.forum-style {
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 0 !important;
}

.single-article.forum-style .entry-header {
    margin-bottom: 20px;
}

.single-article.forum-style .entry-title {
    font-size: 2.2rem;
    margin-bottom: 10px;
}

/* Responsive */
@media (max-width: 768px) {
    .post-author-sidebar {
        padding: 10px 15px;
        gap: 10px;
    }
    
    .author-avatar img {
        width: 36px;
        height: 36px;
    }
    
    .author-meta {
        display: none;
    }
}

/* Forum Editor Styles */
.forum-editor-wrapper {
    border: 1px solid #e1e1e1;
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
    margin-bottom: 20px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

.forum-editor-toolbar {
    background: #f8f9fa;
    padding: 8px 12px;
    border-bottom: 1px solid #e1e1e1;
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    align-items: center;
}

.forum-editor-toolbar button {
    background: transparent;
    border: 1px solid transparent;
    border-radius: 4px;
    padding: 4px 8px;
    cursor: pointer;
    font-size: 14px;
    color: #555;
    transition: all 0.2s;
    display: flex;
    align-items: center;
    justify-content: center;
}

.forum-editor-toolbar button:hover {
    background: #e9ecef;
    border-color: #dee2e6;
    color: #000;
}

.forum-editor-toolbar .separator {
    width: 1px;
    height: 20px;
    background: #dee2e6;
    margin: 0 5px;
}

.forum-editor-wrapper textarea {
    width: 100%;
    border: none !important;
    padding: 15px;
    font-family: inherit;
    font-size: 1rem;
    resize: vertical;
    min-height: 150px;
    background: transparent;
    outline: none !important;
}

.forum-editor-wrapper textarea:focus {
    box-shadow: none !important;
}

.forum-editor-form .form-submit {
    margin-top: 10px;
}

.forum-editor-form .submit {
    background: #007bff !important;
    color: #fff !important;
    padding: 12px 30px !important;
    border: none !important;
    border-radius: 6px !important;
    font-weight: 700 !important;
    font-size: 1rem !important;
    cursor: pointer;
    transition: background 0.2s !important;
    display: inline-block;
}

.forum-editor-form .submit:hover {
    background: #0056b3 !important;
}

.comment-reply-title {
    font-size: 1.4rem;
    margin-bottom: 20px;
    font-weight: 800;
    color: #333;
}

/* Login Prompt Styles */
.forum-login-prompt {
    background: #fff3cd;
    border: 1px solid #ffeeba;
    color: #856404;
    padding: 20px;
    border-radius: 8px;
    text-align: center;
    margin-bottom: 30px;
    font-weight: 600;
}

.forum-login-prompt a {
    color: #007bff;
    text-decoration: underline;
    font-weight: 700;
}

/* Login Page Styles */
.login-page-wrapper {
    min-height: 70vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
    background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
    border-radius: 12px;
}

.login-card {
    background: #fff;
    width: 100%;
    max-width: 450px;
    padding: 50px;
    border-radius: 20px;
    box-shadow: 0 15px 35px rgba(0,0,0,0.1);
}

.login-header {
    text-align: center;
    margin-bottom: 40px;
}

.login-header h1 {
    font-size: 2rem;
    font-weight: 900;
    margin-bottom: 10px;
    color: #333;
}

.login-header p {
    color: #777;
    font-size: 1rem;
}

#forum-login-form p {
    margin-bottom: 20px;
}

#forum-login-form label {
    display: block;
    margin-bottom: 8px;
    font-weight: 600;
    color: #555;
    font-size: 0.9rem;
}

#forum-login-form input[type="text"],
#forum-login-form input[type="password"] {
    width: 100%;
    padding: 14px 18px;
    border: 1px solid #ddd;
    border-radius: 10px;
    font-size: 1rem;
    transition: all 0.3s;
    background: #fdfdfd;
}

#forum-login-form input:focus {
    border-color: #007bff;
    box-shadow: 0 0 0 4px rgba(0,123,255,0.1);
    background: #fff;
    outline: none;
}

.login-remember {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.9rem;
    color: #666;
}

.login-submit {
    margin-top: 30px;
}

#forum-login-form .button-primary {
    width: 100%;
    padding: 14px;
    background: #007bff;
    color: #fff;
    border: none;
    border-radius: 10px;
    font-size: 1.1rem;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.3s, transform 0.2s;
}

#forum-login-form .button-primary:hover {
    background: #0056b3;
    transform: translateY(-2px);
}

.login-footer-links {
    margin-top: 30px;
    text-align: center;
    font-size: 0.9rem;
    color: #999;
}

.login-footer-links a {
    color: #007bff;
    text-decoration: none;
    font-weight: 600;
}

.login-footer-links .sep {
    margin: 0 10px;
}

.already-logged-in {
    text-align: center;
}

.already-logged-in p {
    margin-bottom: 20px;
    font-weight: 600;
}

/* Forum Homepage Styles */
.forum-list {
    width: 100%;
    border: 1px solid #e1e1e1;
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 30px;
    background: #fff;
}

.forum-list-header {
    background: #4a5568;
    color: #fff;
    padding: 12px 20px;
    font-weight: 700;
    display: flex;
    justify-content: space-between;
}

.forum-row {
    display: grid;
    grid-template-columns: 1fr 100px 100px 250px;
    border-bottom: 1px solid #f0f0f0;
    padding: 15px 20px;
    align-items: center;
    transition: background 0.2s;
}

.forum-row:last-child {
    border-bottom: none;
}

.forum-row:hover {
    background: #f8fafc;
}

.forum-info {
    display: flex;
    align-items: center;
    gap: 15px;
}

.forum-icon {
    font-size: 24px;
    color: #cbd5e0;
}

.forum-title a {
    font-size: 1.1rem;
    font-weight: 700;
    color: #2d3748;
    text-decoration: none;
}

.forum-title a:hover {
    color: #007bff;
}

.forum-description {
    font-size: 0.9rem;
    color: #718096;
    margin-top: 3px;
}

.forum-stats {
    text-align: center;
    font-size: 0.9rem;
    color: #4a5568;
}

.forum-stats .stat-label {
    display: block;
    font-size: 0.75rem;
    color: #a0aec0;
    text-transform: uppercase;
}

.forum-last-post {
    font-size: 0.85rem;
    color: #4a5568;
    line-height: 1.4;
}

.last-post-title {
    display: block;
    font-weight: 700;
    color: #2d3748;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.last-post-meta {
    font-size: 0.75rem;
    color: #718096;
}

/* Responsive Forum Home */
@media (max-width: 992px) {
    .forum-row {
        grid-template-columns: 1fr 80px 80px;
    }
    .forum-last-post {
        display: none;
    }
}

@media (max-width: 640px) {
    .forum-row {
        grid-template-columns: 1fr;
        gap: 10px;
    }
    .forum-stats {
        display: none;
    }
}

/* Homepage Tweaks */
.page-header {
    text-align: left;
    margin-bottom: 30px;
    padding: 20px 0;
}

.site-main-heading {
    font-size: 2.5rem;
    font-weight: 800;
    color: #1a202c;
    margin-bottom: 5px;
}

.site-description {
    font-size: 1.1rem;
    color: #718096;
}

.section-title {
    font-size: 1.5rem;
    font-weight: 800;
    margin: 40px 0 20px;
    color: #2d3748;
}

.forum-row.recent-row {
    grid-template-columns: 1fr 100px 100px 250px;
}

/* Author Profile Styles */
.author-profile-header {
    margin-bottom: 50px;
}

.author-bio-large {
    font-size: 1.1rem;
    line-height: 1.8;
    color: #4a5568;
}

.author-signature-preview {
    margin-top: 30px;
    padding-top: 20px;
    border-top: 1px solid #edf2f7;
}

.author-signature-preview h4 {
    font-size: 0.9rem;
    color: #a0aec0;
    text-transform: uppercase;
    margin-bottom: 10px;
}

.btn-primary-small {
    display: inline-block;
    padding: 6px 15px;
    background: #007bff;
    color: #fff !important;
    border-radius: 4px;
    font-size: 0.85rem;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.2s;
}

.btn-primary-small:hover {
    background: #0056b3;
}

.author-recent-activity .forum-list {
    margin-top: 20px;
}

/* CSS Fixes for Recent Discussions & Tables */
.forum-row .forum-icon {
    min-width: 32px;
    text-align: center;
    font-size: 1.5rem;
}

.forum-details {
    flex: 1;
    min-width: 0; /* Enable text truncation in children */
}

.forum-title {
    margin: 0;
    line-height: 1.2;
}

.forum-title a {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.forum-stats {
    display: flex;
    flex-direction: column;
    justify-content: center;
    border-left: 1px solid #f0f0f0;
    height: 100%;
}

.forum-last-post {
    padding-left: 15px;
    border-left: 1px solid #f0f0f0;
}

.recent-row {
    background: #fff;
}

.recent-row:nth-child(even) {
    background: #fdfdfd;
}

/* Category Page Specific */
.archive-header {
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 2px solid #edf2f7;
}

.archive-title {
    font-size: 2rem;
    font-weight: 800;
    margin-bottom: 10px;
}

/* Category/Thread List Enhancements */
.category-description-forum {
    background: #f8fafc;
    padding: 15px 20px;
    border-radius: 8px;
    border-left: 4px solid #007bff;
    margin-bottom: 20px;
    color: #4a5568;
    font-size: 0.95rem;
}

.section-title-small {
    font-size: 1.2rem;
    font-weight: 700;
    margin: 30px 0 15px;
    color: #2d3748;
}

.thread-list .forum-row {
    grid-template-columns: 1fr 100px 200px;
}

.thread-row .forum-title a {
    font-weight: 600;
}

@media (max-width: 768px) {
    .thread-list .forum-row {
        grid-template-columns: 1fr 80px;
    }
}

/* Final Mobile Fixes for Homepage & Categories */
@media (max-width: 768px) {
    .forum-row {
        grid-template-columns: 1fr 60px !important; /* Title and Reply Count only */
        padding: 10px 15px !important;
        gap: 10px;
    }
    
    .forum-stats {
        border-left: none !important;
        text-align: right;
    }
    
    .forum-stats .stat-label {
        font-size: 0.65rem !important;
    }

    .forum-last-post {
        display: none !important; /* Hide last post info on mobile to save space */
    }
    
    .forum-icon {
        font-size: 1.2rem !important;
        min-width: 24px !important;
    }
    
    .forum-title a {
        font-size: 1rem !important;
        white-space: normal !important; /* Allow wrapping on mobile */
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }
    
    .last-post-meta {
        font-size: 0.7rem !important;
    }

    .forum-list-header {
        padding: 10px 15px !important;
    }
    
    .site-main-heading {
        font-size: 1.8rem !important;
    }
    
    .section-title {
        font-size: 1.3rem !important;
        margin: 30px 0 15px !important;
    }
}

@media (max-width: 480px) {
    .forum-row {
        grid-template-columns: 1fr !important; /* Only title on very small screens */
    }
    
    .forum-stats {
        display: none !important;
    }
}

/* Alignment Fix for Mobile Stats */
@media (max-width: 768px) {
    .forum-row {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: space-between !important;
        align-items: center !important;
        gap: 10px !important;
    }

    .forum-info {
        flex: 1 1 60% !important; /* Take most of the space */
        min-width: 150px !important;
    }

    .forum-stats {
        flex: 0 0 auto !important;
        border-left: none !important;
        margin: 0 !important;
        padding: 0 !important;
        text-align: right !important;
        min-width: 45px !important;
        height: auto !important;
    }

    .forum-stats .stat-value {
        font-size: 1rem !important;
        font-weight: 700 !important;
        line-height: 1 !important;
        display: block !important;
    }

    .forum-stats .stat-label {
        font-size: 0.6rem !important;
        margin-top: 2px !important;
    }

    /* Keep stats on the same line if possible, or stack them neatly */
    .forum-row .forum-stats + .forum-stats {
        margin-left: 10px !important;
    }
}

@media (max-width: 480px) {
    .forum-row {
        padding: 12px 10px !important;
    }
    
    .forum-stats:nth-of-type(2) {
        display: none !important; /* Hide one stat on very small screens to avoid crowding */
    }
    
    .forum-info {
        flex: 1 1 70% !important;
    }
}

/* Related Posts in Footer */
.related-posts-footer {
    margin-top: 40px;
    padding: 20px;
    background: #f8f9fa;
    border-radius: 8px;
    border-left: 4px solid var(--primary-color);
}

.related-title-small {
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: 15px;
    color: #333;
}

.related-titles-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.related-titles-list li {
    margin-bottom: 10px;
}

.related-titles-list li a {
    color: var(--primary-color);
    text-decoration: none;
    font-weight: 500;
    transition: color 0.2s;
}

.related-titles-list li a:hover {
    color: var(--primary-hover);
    text-decoration: underline;
}

/* Forum Tags */
.forum-post-tags {
    margin-top: 40px;
    padding-top: 20px;
    border-top: 1px solid var(--border-color);
    display: flex;
    align-items: center;
    gap: 15px;
    flex-wrap: wrap;
}

.tags-label {
    font-weight: 700;
    font-size: 0.9rem;
    color: #5f6368;
}

.tag-chips {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.tag-chips a {
    background: #eef2f7;
    color: #4a5568;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 0.85rem;
    text-decoration: none;
    transition: background 0.2s, color 0.2s;
}

.tag-chips a:hover {
    background: var(--primary-color);
    color: #fff;
}

/* Archive Header Improvements */
.archive-header {
    margin-bottom: 40px;
    padding: 30px;
    background: #fff;
    border: 1px solid var(--border-color);
    border-radius: 12px;
}

.archive-title {
    font-size: 2rem;
    margin-bottom: 10px;
    color: #1a202c;
}

.archive-description {
    color: #718096;
    font-size: 1rem;
}
