* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: Arial, sans-serif;
}

.reply-form .highlighted-username {
    color: #744769;
    font-weight: bold;
    background-color: #f0e8f0;
    padding: 2px 5px;
    border-radius: 3px;
    margin-right: 5px;
}
.comment-content {
    position: relative; /* Ensure child elements are positioned relative to this */
    overflow: visible; /* Prevent clipping of child elements */
    min-height: 100px; /* Ensure there's enough space for content */
}

.replies-container {
    margin-top: 10px; /* Add space above the replies container */
    overflow: hidden; /* Ensure smooth height transitions */
    transition: max-height 0.3s ease; /* Smooth transition for maxHeight */
}

.nested-comment {
    margin-left: 40px; /* Indent nested comments for visual hierarchy */
    margin-top: 10px; /* Add spacing between nested comments */
    position: relative; /* Ensure proper stacking */
    border-left: 2px solid #744769; /* Optional: Add a visual indicator for nesting */
    padding-left: 10px; /* Add padding to the left of nested comments */
}

.reply-form {
    margin-top: 15px; /* Ensure the reply form has space above it */
    margin-left: 40px; /* Align with nested comments */
    width: calc(100% - 50px); /* Adjust width to fit within the nested comment's indentation */
}

.view-replies {
    margin-top: 10px; /* Add spacing above the view-replies link */
    cursor: pointer;
    color: #744769;
    text-decoration: underline;
}


.replies-container {
    overflow: hidden;
    transition: max-height 0.3s ease;
    display: none; /* Default hidden */
}
.replies-container[style*="display: block"] {
    display: block; /* Ensure inline style takes precedence */
}
.view-replies {
    cursor: pointer;
    display: block;
}

.like-button {
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    margin-right: 10px;
    color: #666;
    transition: all 0.2s ease;
}

.like-button:hover {
    color: #744769;
}

.like-button i {
    margin-right: 5px;
}

.like-button.liked, .like-button .liked {
    color: #744769;
}

.like-count {
    font-size: 0.9em;
    margin-left: 3px;
}

.overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.4);
    z-index: 999;
}

.popup {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: #f5f5f5;
    padding: 20px;
    border-radius: 15px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
    z-index: 1000;
    text-align: center;
    width: 350px;
    max-width: 90vw; /* Ensure it fits within viewport width */
    max-height: 80vh; /* Ensure it fits within viewport height */
    overflow-y: auto; /* Allow scrolling if content overflows */
    font-family: 'Jura', sans-serif;
    font-weight: 700;
    font-size: 18px;
}

h1 {
	color: #744769;
    margin-bottom: 40px;
    padding-top: 20px;
    font-size: 2.2rem;
    letter-spacing: 2px;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);
	font-family: 'Jura', sans-serif;
    font-weight: 700;
    -webkit-text-stroke: 1.5px #744769;
	text-align: center;
    padding-bottom: 5px;
    border-bottom: 2px solid #744769;
}

p {
    font-family: 'Jura', sans-serif;
    font-weight: 700;
}

.login-message {
    font-family: 'Jura', sans-serif;
    font-weight: 700;
}

.login-form {
	position: absolute;
    background: rgba(255, 255, 255, 0.95);
    border-radius: 10px;
    box-shadow: 0 8px 20px rgba(116, 71, 105, 0.15);
    width: 700px;
    left: 50%;
	top: 50%;
    padding: 40px;
	transform: translate(-50%, -50%);
}

.register-form {
	position: absolute;
    background: rgba(255, 255, 255, 0.95);
    border-radius: 10px;
    box-shadow: 0 8px 20px rgba(116, 71, 105, 0.15);
    width: 700px;
    left: 50%;
	top: 50%;
    padding: 40px;
	transform: translate(-50%, -50%);
}

.link {
    color: #744769;
    font-family: 'Jura', sans-serif;
    font-weight: 700;
}

.link:hover {
    color: #5a3651;
    transform: translateY(-1px);
}

@keyframes fadeOut {
    0% {
        opacity: 1; 
    }
   
    100% {
        opacity: 0;
    }
}

@keyframes fadeOut2 {
    0% {
        opacity: 1; 
    }
    90% {
        opacity: 1; 
    }
    100% {
        opacity: 0;
	}
}

h3 {
	color: #744769;
    margin-bottom: 40px;
    font-size: 1.2rem;
    letter-spacing: 2px;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);
    font-family: 'Jura', sans-serif;
    font-weight: 700;
    -webkit-text-stroke: 0.3px;
}

#error {
	color: #d23100;
    background-color: #f8d7da;
    border: 1px solid #f5c6cb;
    padding: 10px;
    margin: -25px 0;
	margin-bottom: 10px;
    border-radius: 4px;
	font-size: 1.5rem;
	font-style: italic;
	font-weight: 700;
    font-family: 'Jura', sans-serif;
}

#comment-error, #reply-error-, #edit-error- {
	color: #d23100;
    background-color: #f8d7da;
    border: 1px solid #f5c6cb;
    padding: 10px;
    margin: -25px 0;
	margin-bottom: 10px;
    border-radius: 4px;
	font-size: 1.5rem;
	font-style: italic;
	font-weight: 200;
    font-family: 'Jura', sans-serif;
    font-weight: 700;
}

.comment-section h2 {
	font-style: italic;
	font-weight: 200;
    font-size: 1.5rem;
    font-family: 'Jura', sans-serif;
    font-weight: 700;
	text-align: right;
	margin-bottom: 5px;
    padding-right: 20px;
}

.logo_img {
	position: absolute;
	left: 1%;
	top: 3%;
	height: 80%;
	max-width: 100%
}

.login_img {
	position: absolute;
    width: 82%; 
    height: 70%; 
    object-fit: cover; 
    z-index: -1; 
}

.profile-picture-container {
	position: relative;
    width: 120px ;
    height: 120px;
    margin: auto;
    border-radius: 50%;
    overflow: hidden;
    border: 2px solid black;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2);
}

.profile-picture {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;;
}

body {
    background-image: url('/UfoDisclosureBulgaria/images/space_img.jpg');
    background-size: cover;       
    background-repeat: no-repeat; 
    background-attachment: fixed; 
    background-position: center;  
    margin: 0;                    
    min-height: 100vh; 
    overflow-y: auto; 
}

.ribbon {
	margin-top: 1%;
    position: relative;
    top: 0%;
    left: 50%;
	width: 90%;
    transform: translateX(-50%); 
    background-color: #744769; 
    color: white;
    padding: 1.5%;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
    z-index: 10;
	text-align: center;
}

.content-board {
    width: 90%;
    background-color: rgba(255, 255, 255, 0.9);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
    text-align: center;
    margin: auto;
    margin-bottom: 20px;
    flex: 1; 
    overflow: visible !important;
    max-height: none !important; 
    height: auto !important;
    opacity: 0;
    transition: opacity 1s ease-out;
}

.content-board.loaded {
    opacity: 1;
}

.input-container {
    position: relative;
    width: 100%;
    max-width: 100%;
    padding: 20px;
}

    .like-dislike-container {
        display: flex;
        gap: 10px;
        margin-top: 10px;
        font-family: 'Jura', sans-serif;
        font-weight: 700;
    }

    .like-btn, .dislike-btn {
        display: flex;
        align-items: center;
        gap: 5px;
        cursor: pointer;
        color: #744769;
        transition: color 0.3s ease;
    }

    .like-btn:hover, .dislike-btn:hover {
        color: #442538;
    }

    .like-btn.active, .dislike-btn.active {
        color: #442538;
        font-weight: bold;
    }

    .view-replies {
        color: #744769;
        cursor: pointer;
        text-decoration: underline;
        font-family: 'Jura', sans-serif;
        font-weight: 700;
        margin-top: 10px;
        transition: color 0.3s ease;
    }

    .view-replies:hover {
        color: #442538;
    }

    .nested-comment {
        display: none;
    }

    .replies-visible .nested-comment {
        display: block;
    }

label {
    display: block;
    margin-bottom: 1%;
    text-align: left;
    color: #333;
    font-weight: bold;
}

input {
    width: 55%;
    padding: 15px 10px;
	margin: 0 auto 20px auto;
    display: block;
    border: 2px solid #e0e0e0;
    border-radius: 8px;
    font-size: 1rem;
    transition: all 0.3s ease;
}

input:focus {
    outline: none;  /* Remove default focus outline */
    border: 2px solid #744769 !important;  /* Force the border color */
    box-shadow: 0 0 10px rgba(116, 71, 105, 0.2);
    transform: translateY(-2px);
}

form {
    padding: 2%;
    font-size: 1rem;
}

@keyframes contentanimation {
	from {
		opacity: 0%;
	}	
	to {
		opacity: 100%;
	}
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.navbar {
    background-color: #744769;
    padding: 1% 0;
	font-weight: bold;
}

.nav-list {
    list-style-type: none;
    display: flex;
    justify-content: center;
}

.nav-item {
    position: relative;
    width: 10%;
	margin: 1%;
}

.nav-item a {
    text-decoration: none;
    color: white;
    display: block;
    font-size: 90%;
    font-family: 'Jura', sans-serif;
    font-weight: 700;
    -webkit-text-stroke: 0.5px white;
}

.nav-item a:hover {
    background-color: #5a3651;
}

.dropdown-menu {
	list-style: none;
    display: none;
    position: absolute;
    background-color: #5a3651;
    top: 100%;
	width: 140%;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2);
    z-index: 1000;
}

.dropdown-menu li {
    border-bottom: 1px solid #744769;
}

.dropdown-menu li a {
    padding: 5%;
    color: white;
}

.dropdown-menu li a:hover {
    background-color: #442538;
}

.nav-item.dropdown:hover .dropdown-menu {
    display: block;
}

.fa-container {
  position: fixed; 
  top: 40%;        
  right: 10%;
  display: flex;
  gap: 45%;     
  font-size: 130%;
}

.fa {
  padding: 10%;       
  width: auto;         
  height: auto;        
  text-align: center;
  text-decoration: none;
}

.fa-brands {
  text-decoration: none;
}

.fa-patreon,
.fa-facebook,
.fa-youtube,
.fa-instagram {
  background: #744769;
  color: white;
  border-radius: 5%;
}

.fa:hover {
  background-color: #442538;
}

		.forum-container {
            width: 100%;
            margin: auto;
            background-color: rgba(255, 255, 255, 0.95);
			box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
            overflow: auto;
            padding-bottom: 50px;
            flex: 1; 
            max-height: none !important; 
            height: auto !important;
        }
		
		.forum-header:empty {
			display: none;
		}
		
        .category-list {
            width: 100%;
            border-collapse: collapse;
            font-family: 'Jura', sans-serif;
            font-weight: 700;
        }

        #categoryDescriptionEn {
            transition: transform 0.3s;
        }

        #categoryDescriptionBg {
            transition: transform 0.3s;
        }

        #categoryDescriptionEn:focus{
            outline: none; 
            border: 2px solid #744769 !important;  
            box-shadow: 0 0 10px rgba(116, 71, 105, 0.2);
            transform: translateY(-2px);
        }

        #categoryDescriptionBg:focus{
            outline: none; 
            border: 2px solid #744769 !important;  
            box-shadow: 0 0 10px rgba(116, 71, 105, 0.2);
            transform: translateY(-2px);
        }
        
        .category-list th, .category-list td {
            padding: 20px;
            text-align: left;
            border-bottom: 1px solid #e0e0e0;
            font-family: 'Jura', sans-serif;
            font-weight: 700;
        }
        
        .category-list th {
            background-color: #744769;
            color: white;
            font-family: 'Jura', sans-serif;
            font-weight: 700;
            -webkit-text-stroke: 0.5px;
        }

        .category-list tr {
            transition: transform 0.2s;
        }
        
        .category-list tr:hover {
			transform: translateY(-3px);
            box-shadow: 0 5px 15px rgba(0,0,0,0.2);
        }
        
        .topic-list {
            width: 100%;
            border-collapse: collapse;
            margin-bottom: 20px;
            transition: transform 0.2s;
        }

        .topic-list th, .topic-list td {
            padding: 20px;
            text-align: left;
            border-bottom: 1px solid #e0e0e0;
            font-family: 'Jura', sans-serif;
            font-weight: 700;
        }
        
        .topic-list th {
            background-color: #744769;
            color: white;
            font-family: 'Jura', sans-serif;
            font-weight: 700;
            -webkit-text-stroke: 0.5px;
        }
        
        .topic-list tr {
            transition: transform 0.2s;
        }

        .topic-list tr:hover {
            transform: translateY(-3px);
            box-shadow: 0 5px 15px rgba(0,0,0,0.2);
        }

        #topicContent {
            transition: transform 0.3s; 
        }

        #topicContent:focus{
            outline: none; 
            border: 2px solid #744769 !important;  
            box-shadow: 0 0 10px rgba(116, 71, 105, 0.2);
            transform: translateY(-2px);
        }
        
        .pinned-topic {
            background-color: rgba(116, 71, 105, 0.05);
        }
        
        .topic-title {
            font-weight: bold;
            color: #744769;
            font-family: 'Jura', sans-serif;
            font-weight: 700;
            -webkit-text-stroke: 0.3px;
        }
        
        .comment-section {
            margin-top: 30px;
        }
        
.comment {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    margin-bottom: 20px;
    padding: 15px;
    border-radius: 8px;
    background-color: rgba(255, 255, 255, 0.8);
    text-align: left;
}

.nested-comment .comment-text {
    font-size: 0.9rem;
}
        
        .comment-avatar {
            position: relative;
            width: 60px;
            height: 60px;
            margin-right: 15px;
            overflow: hidden;
            flex-shrink: 0;
            margin-right: 1px;
        }
        
        .comment-avatar img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            border: 2px solid black;
            border-radius: 50%;
        }
        

/* Chat bubble with tail - Fixed version */
.comment-content {
    max-width: calc(100% - 70px); /* Adjust for avatar width + margin */
    flex-grow: 1;
    text-align: left;
    overflow: visible; /* Changed from hidden to visible */
    background-color: #F2F1F8;
    border-radius: 15px; /* Rounded corners for bubble */
    padding: 15px; /* Inner padding for content */
    position: relative;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); /* Subtle shadow */
    margin-left: 10px; /* Add margin to make room for the tail */
}

/* Add chat bubble tail pointing left toward avatar - FIXED */
.comment-content::before {
    content: '';
    position: absolute;
    left: -10px; /* Position tail on left side pointing toward avatar */
    top: 20px; /* Adjust to align with content */
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-right: 10px solid #F2F1F8; /* Match bubble background */
    z-index: 2; /* Ensure tail appears above other elements */
}

/* Optional: Add a shadow to the tail for better visual effect */
.comment-content::after {
    content: '';
    position: absolute;
    left: -11px; /* Slightly more left than the main tail */
    top: 20px;
    width: 0;
    height: 0;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); /* Subtle shadow */
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    z-index: 1; /* Behind the main tail */
}

        .comment-header {
            display: flex;
            justify-content: space-between;
            margin-bottom: 8px;
        }
        
        .comment-author {
            color: black;
            font-family: 'Jura', sans-serif;
            font-weight: bold;
            -webkit-text-stroke: 0.5px #744769;;
            font-size: 1.2rem;
        }
        
        .comment-date {
            color: #777;
            font-size: 0.8rem;
            font-family: 'Jura', sans-serif;
            font-weight: 700;
        }
        
        .comment-text {
            line-height: 1.5;
			word-wrap: break-word;
			overflow-wrap: break-word; 
			max-width: 100%; 
            font-family: 'Jura', sans-serif;
            font-weight: 700;
        }
        
        .reply-link {
            color: #744769;
            cursor: pointer;
            margin-top: 8px;
            display: inline-block;
            font-family: 'Jura', sans-serif;
            font-weight: 700;
            font-size: 0.9rem;
        }
        
        .reply-link:hover {
            color: #5a3651;
            text-decoration: underline;
        }       
		
        .comment-form textarea {
            width: 100%;
            padding: 10px;
            border-radius: 8px;
            font-size: 1rem;
            margin-bottom: 10px;
            resize: none;
            min-height: 10px;
			text-align: left;
            transition: transform 0.3s ease;
            font-family: 'Jura', sans-serif;
            font-weight: 700;
        }
        
        .comment-form textarea:focus {
            outline: none; 
            border: 2px solid #744769 !important;  
            box-shadow: 0 0 10px rgba(116, 71, 105, 0.2);
            transform: translateY(-2px);
        }

        .reply-form textarea {
            width: 100%; 
            height: auto; 
            min-height: 150px; 
            padding: 10px; 
            margin-bottom: 15px; 
            border: 2px solid #744769; 
            border-radius: 8px; 
            font-size: 16px; 
            color: black; 
            resize: none;
            box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1); 
            transition: transform 0.3s ease;
            overflow: hidden;
            font-family: 'Jura', sans-serif;
            font-weight: 700;
        }
        
        .reply-form textarea:focus {
            outline: none; 
            border: 2px solid #744769 !important;  
            box-shadow: 0 0 10px rgba(116, 71, 105, 0.2);
            transform: translateY(-2px);
        }

        .comment-form button, .reply-form button {
            background-color: #744769;
            color: white;
            border: none;
            border-radius: 8px;
            padding: 8px 20px;
            font-size: 0.9rem;
            cursor: pointer;
            transition: all 0.3s ease;
            font-family: 'Jura', sans-serif;
            font-weight: 700;
        }
        
        .comment-form button:hover, .reply-form button:hover {
            background-color: #5a3651;
            transform: translateY(-2px);
            box-shadow: 0 2px 5px rgba(90, 54, 81, 0.2);
        }
        
        .topic-content {
            background-color: #F2F1F8;
            border-radius: 8px;
            line-height: 1.6;
            word-wrap: break-word; 
            overflow-wrap: break-word;
            font-family: 'Jura', sans-serif;
            font-weight: 700;
        }
        
        .new-topic-form {
            margin-top: 30px;
            background-color: rgba(255, 255, 255, 0.8);
            padding: 20px;
            border-radius: 8px;
            box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
        }
        
        .new-topic-form h3 {
            color: #744769;
            margin-bottom: 15px;
            font-family: 'Jura', sans-serif;
            font-weight: 700;
            margin: 0;
        }
        
        .new-topic-form input[type="text"], .new-topic-form textarea {
            width: 50%;
            padding: 10px;
            border: 2px solid #e0e0e0;
            border-radius: 8px;
            font-size: 1rem;
            margin-bottom: 15px;
            margin: auto;
            font-family: 'Jura', sans-serif;
            font-weight: 700;
        }
		
		.new-topic-form input {
            width: 10%;
            padding: 10px;
            border: 2px solid #e0e0e0;
            border-radius: 8px;
            font-size: 1rem;
            margin-bottom: 15px;
            margin: 0;
        }
        
        .new-topic-form textarea {
            resize: vertical;
            min-height: 150px;
            font-family: 'Jura', sans-serif;
            font-weight: 700;
        }
        
        .new-topic-form input[type="text"]:focus, .new-topic-form textarea:focus {
            outline: none;
            border: 2px solid #744769;
            box-shadow: 0 0 10px rgba(116, 71, 105, 0.2);
        }
        
        .checkbox-container {
            display: flex;
            align-items: center;
            margin-bottom: 15px;
        }
        
        .checkbox-container input[type="checkbox"] {
            width: auto;
            margin-right: 10px;
        }
        
        .nav-breadcrumb {
            margin-bottom: 20px;
            font-family: 'Jura', sans-serif;
            font-weight: 700;
        }
        
        .nav-breadcrumb a {
            color: #744769;
            text-decoration: none;
			font-family: 'Jura', sans-serif;
            font-weight: 700;
        }
        
        .nav-breadcrumb a:hover {
            color: #5a3651;
            text-decoration: underline;
        }
        
        .nav-breadcrumb span {
            margin: 0 8px;
        }
        
        
.nested-comment {
    position: relative;
    border-radius: 8px;
    padding: 15px;
    text-align: left;
    flex-shrink: 0;
    background-color: #F2F1F8;
    margin-left: -10px;
}

.nested-comment .comment-avatar {
    width: 40px; 
    height: 40px; 
}

.nested-comment .admin-badge {
    max-height: 1.5rem; /* Reduced from 0.8rem */
    padding: 2px 4px; /* Reduced from 2px 6px */
    border-radius: 3px; /* Slightly smaller radius for proportionality */
    margin-left: -6px;
}

.nested-comment .custom-badge {
    max-height: 1.5rem; /* Reduced from 0.8rem */
    padding: 2px 4px; /* Reduced from 2px 6px */
    border-radius: 3px; /* Slightly smaller radius for proportionality */
    margin-left: -6px;
}

.nested-comment .comment-avatar img {
    width: 100%; 
    height: 100%;
    object-fit: cover;
    border: 1px solid black; 
}

.nested-comment .comment-author {
    font-size: 0.95rem;
    font-weight: 700;
}
        
        .nested-comment::before {
            content: none;
            position: absolute;
            top: 0;
            left: -20px;
            width: 2px;
            height: 100%;
            background-color: #744769;
            opacity: 0.4;
        }
        
        .login-message {
            text-align: center;
            margin: 20px 0;
            padding: 15px;
            background-color: rgba(216, 71, 105, 0.1);
            border-radius: 8px;
            font-style: italic;
        }
        
        .login-message a {
            color: #744769;
            font-weight: bold;
        }
        
        .create-topic-btn {
            background-color: #744769;
            color: white;
            border: none;
            border-radius: 8px;
            padding: 10px 20px;
            font-size: 1rem;
            cursor: pointer;
            transition: all 0.3s ease;
            font-family: 'Jura', sans-serif;
            font-weight: 700;
            text-decoration: none;
            display: inline-block;
        }
        
        .create-topic-btn:hover {
            background-color: #5a3651;
            transform: translateY(-2px);
            box-shadow: 0 5px 15px rgba(90, 54, 81, 0.3);
        }
        
        .comment-actions {
            margin-top: 10px;
            display: flex;
            align-items: center;
			margin-bottom: 20px;
        }
        
        .edit-comment, .delete-comment {
            margin-right: 15px;
            color: #744769;
            cursor: pointer;
            font-size: 0.85rem;
			color: #744769;
            cursor: pointer;
            margin-top: 8px;
            display: inline-block;
            font-family: 'Jura', sans-serif;
            font-weight: 700;
            font-size: 0.9rem;
        }
        
        .edit-comment:hover, .delete-comment:hover {
            color: #5a3651;
            text-decoration: underline;
        }
        
        .edit-form {
            display: none;
            margin-top: 10px;
        }
        
        .comment-status {
            font-style: italic;
            color: #777;
            font-size: 0.85rem;
            margin-top: 5px;
        }

        .edit-form textarea {
            width: 100%; 
            height: auto; 
            min-height: 150px; 
            padding: 10px; 
            margin-bottom: 15px; 
            border: 2px solid #744769; 
            border-radius: 8px; 
            font-size: 16px; 
            color: black; 
            resize: none;
            box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1);
            transition: transform 0.3s ease;
            overflow: hidden;
            font-family: 'Jura', sans-serif;
            font-weight: 700;
        }
        
        .edit-form textarea:focus {
            outline: none; 
            border: 2px solid #744769 !important;  
            box-shadow: 0 0 10px rgba(116, 71, 105, 0.2);
            transform: translateY(-2px);
        }

        .hamburger-menu {
            display: none;
            cursor: pointer;
            position: absolute;
            top: 25px;
            left: 20px;
            z-index: 200;
        }
        
        .hamburger-menu .bar {
            width: 25px;
            height: 3px;
            background-color: white;
            margin: 5px 0;
            transition: 0.4s;
        }
        
        .hamburger-menu.active .bar:nth-child(1) {
            transform: rotate(-45deg) translate(-5px, 6px);
        }
        
        .hamburger-menu.active .bar:nth-child(2) {
            opacity: 0;
        }
        
        .hamburger-menu.active .bar:nth-child(3) {
            transform: rotate(45deg) translate(-5px, -6px);
        }
        
        .menu-overlay.active {
            display: block;
        }
        
        .dropdown-arrow {
            margin-left: 8px;
            display: inline-block;
            transition: transform 0.3s ease;
        }
        
        .dropdown-arrow.rotate {
            transform: rotate(90deg);
        }
        
        
        @media screen and (max-width: 768px) {
            /* Shared elements from dashboard */
            body {
                transform: scale(1);
                transform-origin: top center;
                width: 100%;
                margin: 0 auto;
                height: auto;
                overflow: auto; 
            }
            .hamburger-menu {
                display: block;
            }
            .ribbon {
                margin-top: 0;
                width: 100%;
                padding: 10px;
                position: relative;
                height: auto;
                display: flex;
                flex-wrap: wrap;
                justify-content: space-between;
                align-items: center;
            }
            .logo_img {
                position: relative;
                left: 0;
                top: 0;
                height: 60px;
                display: block;
                margin: 0;
                margin-left: 50px;
            }
            .fa-container {
                position: relative;
                top: auto;
                right: auto;
                flex-direction: row;
                gap: 10px;
                margin: 0;
            }
            .fa-patreon,
            .fa-facebook,
            .fa-youtube,
            .fa-instagram {
                font-size: 0.9rem;
                padding: 6px;
            }
            .navbar {
                padding: 0;
                display: none;
                width: 100%;
                position: absolute;
                top: 100%;
                left: 0;
                z-index: 100;
            }
            .navbar.active {
                display: block;
            }
            .nav-list {
                flex-direction: column;
                align-items: stretch;
                width: 100%;
                padding: 0;
            }
            .nav-item {
                width: 100%;
                margin: 0;
                text-align: left;
                border-bottom: 1px solid rgba(255, 255, 255, 0.1);
            }
            .nav-item a {
                padding: 25px 20px;
                font-size: 16px;
                display: flex;
                justify-content: space-between;
                align-items: center;
            }
            .dropdown-menu {
                position: static;
                width: 100%;
                box-shadow: none;
                display: none;
                background-color: rgba(0, 0, 0, 0.1);
                max-height: 0;
                overflow: hidden;
                transition: max-height 0.3s ease;
            }
            .dropdown-menu li {
                border-bottom: 1px solid #744769;
            }
            .dropdown-menu li:last-child {
                border-bottom: none;
            }
            .dropdown-menu li a {
                padding: 12px 20px 12px 35px;
                font-size: 14px;
            }
        
            .nav-item.dropdown:hover .dropdown-menu {
                display: none;
            }
            .nav-item.dropdown.active .dropdown-menu {
                display: block;
            }
            .content-board {
        width: 100%;
        height: calc(100%);
        overflow: auto;
        max-height: auto;
        margin-bottom: 0px;
        }
        .forum-container {
        width: 100%;
        min-height: 100vh;
        overflow: auto;
        max-height: auto;
        margin-bottom: 0px;
            }
            
    #topic-popup {
        width: 80%; /* Reduced from 90% or default */
        max-width: 350px; /* Constrain width for mobile */
        height: auto; /* Adjust height based on content */
        max-height: 70vh; /* Reduced for compactness */
        padding: 20px; /* Reduced padding */
        font-size: 16px; /* Smaller font size */
    }

    #topic-popup.form-popup h1 {
        font-size: 18px; /* Smaller header */
        margin-bottom: 15px; /* Reduced margin */
    }

    #topic-popup.form-popup form input[type="text"],
    #topic-popup.form-popup form textarea {
        font-size: 0.9rem; /* Smaller input font */
        padding: 8px; /* Reduced padding */
        margin-bottom: 10px; /* Tighter spacing */
    }

    #topic-popup.form-popup form textarea {
        min-height: 200px; /* Reduced textarea height */
    }

    #topic-popup.form-popup form button {
        padding: 8px 15px; /* Smaller buttons */
        font-size: 0.9rem; /* Smaller button text */
    }

    #topic-popup.form-popup .cancel-btn {
        padding: 8px 15px; /* Match button padding */
        font-size: 0.9rem;
    }
    
    #category-popup {
        width: 80%; /* Reduced from 90% or default */
        max-width: 350px; /* Constrain width for mobile */
        height: auto; /* Adjust height based on content */
        max-height: 70vh; /* Reduced for compactness */
        padding: 20px; /* Reduced padding */
        font-size: 16px; /* Smaller font size */
    }

    #category-popup.form-popup h1 {
        font-size: 18px; /* Smaller header */
        margin-bottom: 15px; /* Reduced margin */
    }

    #category-popup.form-popup form input[type="text"],
    #category-popup.form-popup form textarea {
        font-size: 0.9rem; /* Smaller input font */
        padding: 8px; /* Reduced padding */
        margin-bottom: 10px; /* Tighter spacing */
    }

    #category-popup.form-popup form textarea {
        min-height: 200px; /* Reduced textarea height */
    }

    #category-popup.form-popup form button {
        padding: 8px 15px; /* Smaller buttons */
        font-size: 0.9rem; /* Smaller button text */
    }

    #category-popup.form-popup .cancel-btn {
        padding: 8px 15px; /* Match button padding */
        font-size: 0.9rem;
    }

            h1 {
                font-size: 1.8rem;
                margin-bottom: 20px;
                padding-top: 15px;
            }
            .dropdown-arrow {
                margin-left: 8px;
                display: inline-block;
                transition: transform 0.3s ease;
            }
            .dropdown-arrow.rotate {
                transform: rotate(90deg);
            }
        
            .comment-section h2 {
                font-size: 1rem;
            }
            .login-form,
            .register-form {
                width: 90%;
                padding: 20px;
            }
            .category-list th,
            .category-list td,
            .topic-list th,
            .topic-list td {
                padding: 10px;
                font-size: 0.9rem;
            }
            .comment {
                display: flex;
                flex-direction: row; 
                align-items: flex-start; 
                padding: 10px;
                width: 100%;
            }
            
            .nested-comment .comment-content {
                min-width: 95%;
            }
            
            .comment .comment-date {
                font-size: 0.65rem;
                flex-shrink: 0;
            }
            

            .nested-comment {
                width: 95%; 
            }

            .nested-comment .comment-date {
                font-size: 0.65rem;
                flex-shrink: 0;
            }

            .comment-avatar {
                min-width: 60px;
                height: 60px;
                
                margin-bottom: 10px;
            }

            .nested-comment .comment-avatar {
                min-width: 40px;
                height: 40px;
            }

            .comment-date {
                position: relative;
                right: 1px;
            }
            .comment-form textarea,
            .reply-form textarea,
            .edit-form textarea,
            .new-topic-form textarea {
                width: 100%;
                min-height: 100px;
            }
            .new-topic-form input[type="text"] {
                width: 100%;
            }
            .form-popup {
                width: 90%;
                padding: 20px;
            }
            #category-popup {
                height: auto;
                max-height: 80vh;
            }
            .popup {
                position: fixed;
                width: 90%;
                padding: 20px;
            }
            .forum-container {
                min-width: 100%;
                overflow-y: auto;
                max-height: fit-content;
                padding-bottom: 100px;
            }
            #mainCommentContent {
                width: 100%;
            }
            
            .reply-form {
    margin-left: -2px; /* Reduced from 40px to allow more width */
    width: 102%;
  }

  .reply-form textarea {
    width: 100%; /* Ensure textarea uses full available width */
    overflow-y: auto;
  }
        }
        
        @media screen and (min-width: 769px) and (max-width: 1132px) {
            /* Shared elements from dashboard */
            body {
                transform: scale(1, 1.15);
                transform-origin: top center;
                width: 100%;
                margin: 0 auto;
            }
            .nav-item a {
                font-size: 65%;
            }
            .nav-item.dropdown {
                font-size: 90%;
            }
            .fa-brands {
                font-size: 0.8rem;
                padding: 4px;
            }
            .fa-container {
                gap: 15px;
                right: 2%;
                top: 35%;
            }
            .content-board {
                width: 98%;
            }
            .ribbon {
                width: 98%;
            }
            .nav-list {
                flex-direction: row;
            }
        
            .login-form,
            .register-form {
                width: 600px;
            }
            .category-list th,
            .category-list td,
            .topic-list th,
            .topic-list td {
                padding: 15px;
            }
            .form-popup {
                width: 500px;
            }
            .comment-avatar {
                min-width: 60px;
                height: 60px;
                margin-right: 10px;
                margin-bottom: 10px;
            }

            .nested-comment .comment-avatar {
                min-width: 40px;
                height: 40px;
            }
            .nested-comment .comment-author {
                font-size: 1.2rem;
            }
        }
        
        @media screen and (min-width: 1133px) and (max-width: 1320px) {
            /* Shared elements from dashboard */
            body {
                transform: scale(0.9, 1);
                transform-origin: top center;
                width: 100%;
                margin: 0 auto;
            }
            .nav-item a {
                font-size: 75%;
            }
            .nav-item.dropdown {
                font-size: 90%;
            }
            .fa-brands {
                font-size: 1rem;
                padding: 5px;
            }
            .fa-container {
                gap: 15px;
                right: 2%;
                top: 35%;
            }
            .content-board {
                width: 90%;
            }
            .ribbon {
                width: 90%;
            }
            .nav-list {
                flex-direction: row;
            }
            .login-form,
            .register-form {
                width: 700px;
            }
            .category-list th,
            .category-list td,
            .topic-list th,
            .topic-list td {
                padding: 20px;
            }
            .form-popup {
                width: 600px;
            }
            .comment-avatar {
                min-width: 60px;
                height: 60px;
                margin-right: 10px;
                margin-bottom: 10px;
            }

            .nested-comment .comment-avatar {
                min-width: 40px;
                height: 40px;
            }
        }
        
        @media (hover: none) {
            .nav-item.dropdown .dropdown-menu {
                display: none;
            }
            .nav-item.dropdown:active .dropdown-menu {
                display: block;
            }
        }