/* ==========================================
WHITE HEADER DESIGN - GOODWOOD PUBLISHING
FIXED: COMPACT HEIGHT, NO CUT-OFF BORDERS
========================================== */

/* Header dengan background putih - REDUCED HEIGHT */
.navbar-header,
.navbar-default,
.navbar,
#headerNavigationContainer,
header.navbar,
.pkp_structure_head,
header,
.navbar-fixed-top,
.navbar-static-top {
background: transparent !important;
background-color: transparent !important;
box-shadow: none !important;
border: none !important;
background-image: none !important;
min-height: 60px !important;
height: auto !important;
margin: 0 !important;
padding: 0 !important;
}

/* Container transparan */
.container,
div.container {
background: transparent !important;
background-image: none !important;
max-width: 1200px !important;
width: 100% !important;
}

/* Header Container - FLEXBOX LAYOUT - COMPACT */
#headerNavigationContainer {
background-color: #ffffff !important;
min-height: 60px !important;
padding: 0 !important;
margin: 0 !important;
}

#headerNavigationContainer .container {
display: flex;
align-items: center;
justify-content: space-between;
min-height: 60px !important;
padding: 10px 20px !important;
position: relative;
flex-wrap: nowrap;
max-width: 1200px !important;
margin: 0 auto !important;
}

/* ===== NAVBAR HEADER (LOGO & TITLE) - CENTERED VERTICALLY ===== */
.navbar-header {
display: flex !important;
align-items: center !important;
margin-right: 20px !important;
padding: 0 !important;
flex-shrink: 0 !important;
min-height: 60px !important;
}

/* ===== HAMBURGER MENU ===== */
.navbar-toggle {
display: none !important;
position: absolute !important;
right: 15px !important;
top: 50% !important;
transform: translateY(-50%) !important;
margin: 0 !important;
border: 1px solid #d1d5db !important;
background-color: transparent !important;
padding: 8px 10px !important;
border-radius: 4px !important;
z-index: 9999 !important;
}

.navbar-toggle:hover {
background-color: #f3f4f6 !important;
}

.navbar-toggle .icon-bar {
background-color: #1f2937 !important;
display: block !important;
width: 22px !important;
height: 2px !important;
border-radius: 1px !important;
margin: 4px 0 !important;
}

/* ===== NAV MENU ===== */
#nav-menu {
display: flex !important;
align-items: center !important;
margin: 0 !important;
margin-left: auto !important;
flex-shrink: 0 !important;
}

/* ===== NAVIGATION STYLING ===== */
.navbar-nav,
#main-navigation,
.navbar-primary {
display: flex !important;
flex-direction: row !important;
align-items: center !important;
margin: 0 !important;
margin-left: 20px !important;
padding: 0 !important;
list-style: none !important;
flex-wrap: nowrap !important;
}

.navbar-nav > li,
#main-navigation > li,
.navbar-primary > li {
display: inline-flex !important;
align-items: center !important;
margin: 0 !important;
position: relative !important;
flex-shrink: 0 !important;
}

/* ===== MENU ITEMS - WARNA HITAM - SENTENCE CASE ===== */
.navbar-nav > li > a,
#main-navigation > li > a,
.navbar-primary > li > a {
color: #1f2937 !important;
padding: 6px 12px !important;
border-radius: 0 !important;
font-weight: 500 !important;
font-size: 14px !important;
border: none !important;
border-bottom: 2px solid transparent !important;
background-color: transparent !important;
background-image: none !important;
text-decoration: none !important;
transition: all 0.3s ease !important;
display: flex !important;
align-items: center !important;
white-space: nowrap !important;
text-transform: none !important;
}

.navbar-nav > li > a:hover,
#main-navigation > li > a:hover,
.navbar-primary > li > a:hover {
background-color: transparent !important;
color: #1f2937 !important;
border-bottom: 2px solid #1f2937 !important;
}

.navbar-nav > li.active > a,
#main-navigation > li.active > a {
color: #1f2937 !important;
font-weight: 600 !important;
border-bottom: 2px solid #1f2937 !important;
}

/* ===== DROPDOWN ===== */
#main-navigation > li.dropdown > a,
.navbar-nav > li.dropdown > a {
color: #1f2937 !important;
background-color: transparent !important;
border-bottom: 2px solid transparent !important;
text-transform: none !important;
}

#main-navigation > li.dropdown > a:hover,
.navbar-nav > li.dropdown > a:hover {
border-bottom: 2px solid #1f2937 !important;
}

.navbar-nav .dropdown-menu,
#main-navigation .dropdown-menu,
#navigationUser .dropdown-menu {
border-radius: 8px !important;
background-color: #ffffff !important;
border: 1px solid #e5e7eb !important;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
margin-top: 0px !important;
padding-top: 8px !important;
display: none;
position: absolute;
z-index: 1000;
min-width: 200px !important;
padding: 8px 0 !important;
opacity: 0;
transform: translateY(-10px);
transition: opacity 0.3s ease, transform 0.3s ease;
}

.navbar-nav .dropdown::after,
#main-navigation .dropdown::after,
#navigationUser .dropdown::after {
content: '';
position: absolute;
top: 100%;
left: 0;
right: 0;
height: 10px;
z-index: 999;
}

@media (min-width: 993px) {
.navbar-nav .dropdown:hover .dropdown-menu,
#main-navigation .dropdown:hover .dropdown-menu,
#navigationUser .dropdown:hover .dropdown-menu {
display: block;
opacity: 1;
transform: translateY(0);
}
}

.navbar-nav .dropdown-menu > li > a,
#main-navigation .dropdown-menu > li > a,
#navigationUser .dropdown-menu > li > a {
color: #1e40af !important;
padding: 10px 18px !important;
background-color: transparent !important;
font-weight: 500 !important;
transition: all 0.2s ease !important;
text-transform: none !important;
}

.navbar-nav .dropdown-menu > li > a:hover,
#main-navigation .dropdown-menu > li > a:hover,
#navigationUser .dropdown-menu > li > a:hover {
background-color: #FF8603 !important;
color: #ffffff !important;
}

/* ===== ADMIN SECTION - FIX UNTUK OUTLINE ===== */
#navigationUser {
display: flex !important;
align-items: center !important;
position: relative !important;
flex-shrink: 0 !important;
margin-left: 10px !important;
visibility: visible !important;
opacity: 1 !important;
padding: 3px 0 !important; /* ADDED: Padding untuk mencegah outline terpotong */
}

@media (min-width: 993px) {
#navigationUser::before {
display: none !important;
content: none !important;
}
}

#navigationUser > li {
flex-shrink: 0 !important;
display: inline-flex !important;
visibility: visible !important;
opacity: 1 !important;
margin: 0 4px !important; /* ADDED: Spacing antar tombol */
}

/* FIX: Tombol dengan border yang tidak terpotong */
#navigationUser > li > a,
#navigationUser > li.dropdown > a {
color: #1e40af !important;
border: 2px solid #1e40af !important;
border-radius: 6px !important;
padding: 6px 16px !important; /* REDUCED padding untuk header lebih compact */
font-weight: 600 !important;
font-size: 14px !important;
background-color: transparent !important;
transition: all 0.3s ease !important;
white-space: nowrap !important;
display: inline-flex !important;
align-items: center !important;
visibility: visible !important;
opacity: 1 !important;
min-width: auto !important;
max-width: none !important;
/* CRITICAL: Mencegah border terpotong */
box-sizing: border-box !important;
margin: 0 !important;
text-transform: none !important;
}

#navigationUser > li > a:hover,
#navigationUser > li.dropdown > a:hover {
background-color: #1e40af !important;
color: #ffffff !important;
border: 2px solid #1e40af !important; /* Tetap 2px saat hover */
}

#navigationUser .badge {
background-color: #1e40af !important;
color: #ffffff !important;
padding: 2px 6px;
border-radius: 12px;
font-size: 11px;
margin-left: 6px;
transition: all 0.3s ease;
}

#navigationUser > li > a:hover .badge {
background-color: #ffffff !important;
color: #1e40af !important;
}

/* ===== LOGOUT BUTTON ===== */
#navigationUser > li > a[href*="logout"],
a[href*="signOut"] {
color: #ffffff !important;
background-color: #1e40af !important;
border: 2px solid #1e40af !important;
}

#navigationUser > li > a[href*="logout"]:hover,
a[href*="signOut"]:hover {
background-color: #1e3a8a !important;
border: 2px solid #1e3a8a !important;
}

/* ===== LOGIN/REGISTER BUTTONS - FORCE VISIBLE ===== */
.navbar-nav > li > a[href*="login"]:not([href*="logout"]),
#main-navigation > li > a[href*="login"]:not([href*="logout"]),
a[href*="/login"]:not([href*="logout"]) {
color: #1e40af !important;
border: 2px solid #1e40af !important;
border-radius: 6px !important;
padding: 6px 16px !important;
margin-left: 8px !important;
background-color: transparent !important;
white-space: nowrap !important;
flex-shrink: 0 !important;
display: inline-flex !important;
visibility: visible !important;
opacity: 1 !important;
position: relative !important;
z-index: 999 !important;
box-sizing: border-box !important;
text-transform: none !important;
}

.navbar-nav > li > a[href*="login"]:hover,
#main-navigation > li > a[href*="login"]:hover,
a[href*="/login"]:not([href*="logout"]):hover {
background-color: #1e40af !important;
color: #ffffff !important;
border: 2px solid #1e40af !important;
}

.navbar-nav > li > a[href*="register"],
#main-navigation > li > a[href*="register"],
a[href*="/register"] {
color: #ffffff !important;
background-color: #1e40af !important;
border: 2px solid #1e40af !important;
border-radius: 6px !important;
padding: 6px 16px !important;
margin-left: 4px !important;
white-space: nowrap !important;
flex-shrink: 0 !important;
display: inline-flex !important;
visibility: visible !important;
opacity: 1 !important;
position: relative !important;
z-index: 999 !important;
box-sizing: border-box !important;
text-transform: none !important;
}

.navbar-nav > li > a[href*="register"]:hover,
#main-navigation > li > a[href*="register"]:hover,
a[href*="/register"]:hover {
background-color: #1e3a8a !important;
border: 2px solid #1e3a8a !important;
}

/* Force visibility for parent LI elements */
.navbar-nav > li:has(a[href*="login"]),
.navbar-nav > li:has(a[href*="register"]),
#main-navigation > li:has(a[href*="login"]),
#main-navigation > li:has(a[href*="register"]),
li:has(> a[href*="/login"]),
li:has(> a[href*="/register"]) {
display: inline-flex !important;
visibility: visible !important;
opacity: 1 !important;
position: relative !important;
z-index: 999 !important;
}

/* EXTRA FORCE - untuk halaman jurnal */
body:not(.page_index_site) .navbar-nav > li > a[href*="login"],
body:not(.page_index_site) .navbar-nav > li > a[href*="register"],
body:not(.page_index_site) #main-navigation > li > a[href*="login"],
body:not(.page_index_site) #main-navigation > li > a[href*="register"] {
display: inline-flex !important;
visibility: visible !important;
opacity: 1 !important;
}

body:not(.page_index_site) .navbar-nav > li:has(a[href*="login"]),
body:not(.page_index_site) .navbar-nav > li:has(a[href*="register"]),
body:not(.page_index_site) #main-navigation > li:has(a[href*="login"]),
body:not(.page_index_site) #main-navigation > li:has(a[href*="register"]) {
display: inline-flex !important;
visibility: visible !important;
opacity: 1 !important;
}

/* ===== LOGO STYLING - CENTERED VERTICALLY - COMPACT ===== */
.navbar-brand,
.site-name,
h1.site-name {
margin: 0 !important;
padding: 0 !important;
display: flex !important;
align-items: center !important;
background: none !important;
background-color: transparent !important;
min-height: 60px !important;
height: 60px !important;
}

.navbar-brand img,
.site-name img,
h1.site-name img {
max-width: 140px !important;
width: 140px !important;
height: auto !important;
margin: 0 !important;
padding: 0 !important;
display: block !important;
}

h1.site-name {
display: flex !important;
align-items: center !important;
justify-content: flex-start !important;
}

/* ===== JOURNAL TITLE - COMPACT - RATA KIRI - FONT SAMA DENGAN MENU - BOLD ===== */
.page-header,
.site-name .navbar-brand {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
color: #000000 !important;
font-size: 16px !important;
text-align: left !important;
font-weight: 500 !important;
}

.navbar-brand:not(.navbar-brand-logo),
h1.site-name a:not(.navbar-brand-logo),
.site-name .navbar-brand:not(.navbar-brand-logo) {
color: #000000 !important;
max-width: 350px !important;
white-space: normal !important;
line-height: 1.3 !important;
word-wrap: break-word !important;
font-size: 15px !important;
overflow: hidden !important;
text-overflow: ellipsis !important;
display: flex !important;
align-items: center !important;
min-height: 60px !important;
padding: 0 !important;
margin: 0 !important;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
text-align: left !important;
font-weight: 400 !important;
}

.page-header h1,
.page-header h2,
.article-header h1 {
color: #000000 !important;
white-space: normal !important;
word-wrap: break-word !important;
font-size: 32px !important;
line-height: 1.3 !important;
text-align: left !important;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
font-weight: 700 !important;
}

.non_index_header h1,
.article-header h1,
.page-header h1 {
font-size: 32px !important;
line-height: 1.3 !important;
margin-bottom: 10px !important;
white-space: normal !important;
word-wrap: break-word !important;
color: #000000 !important;
display: -webkit-box !important;
-webkit-line-clamp: 2 !important;
-webkit-box-orient: vertical !important;
overflow: hidden !important;
text-align: left !important;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
font-weight: 700 !important;
}

.journal_index h1,
div.non_index_header h1 {
font-size: 30px !important;
line-height: 1.3 !important;
max-width: 100% !important;
color: #000000 !important;
display: -webkit-box !important;
-webkit-line-clamp: 2 !important;
-webkit-box-orient: vertical !important;
overflow: hidden !important;
text-align: left !important;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
font-weight: 700 !important;
}

.article-header .subtitle,
.page-header .subtitle,
.page-header small {
font-size: 16px !important;
line-height: 1.4 !important;
color: #000000 !important;
text-align: left !important;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
}

/* ===== FIX UNTUK KONTEN ===== */
.pkp_structure_page {
padding-top: 60px !important;
}

.slideshow,
.container-phd,
.pkp_structure_content {
margin-top: 0 !important;
}

/* ===================================
RESPONSIVE - MOBILE
=================================== */
@media (max-width: 992px) {
.navbar-toggle {
display: block !important;
}

#headerNavigationContainer .container {
flex-wrap: wrap;
padding-right: 60px !important;
padding-top: 8px !important;
padding-bottom: 8px !important;
}

.navbar-header {
flex: 0 0 auto;
margin-right: 0 !important;
}

#nav-menu {
flex: 0 0 100%;
width: 100%;
display: none !important;
background-color: #ffffff;
border-top: 1px solid #e5e7eb;
margin-top: 10px;
margin-left: 0 !important;
padding: 10px 0;
}

#nav-menu.in {
display: block !important;
}

.navbar-nav,
#main-navigation {
flex-direction: column !important;
width: 100%;
}

.navbar-nav > li,
#main-navigation > li {
display: block !important;
width: 100%;
}

.navbar-nav > li > a,
#main-navigation > li > a {
padding: 12px 20px !important;
border-bottom: 1px solid #f3f4f6 !important;
width: 100%;
}

.navbar-nav .dropdown-menu,
#main-navigation .dropdown-menu,
#navigationUser .dropdown-menu {
position: static;
box-shadow: none;
border: none;
margin-top: 0 !important;
}

.navbar-nav .dropdown.open .dropdown-menu,
#main-navigation .dropdown.open .dropdown-menu {
display: block !important;
opacity: 1;
transform: translateY(0);
}

.navbar-nav .dropdown-menu > li > a,
#main-navigation .dropdown-menu > li > a {
padding-left: 40px !important;
}

#navigationUser {
width: 100%;
border-top: 2px solid #e5e7eb;
padding-top: 10px;
margin-top: 10px;
}

#navigationUser::before {
display: none;
}

#navigationUser > li {
width: 100%;
}

#navigationUser > li > a {
width: 100%;
margin-left: 0 !important;
margin-top: 8px;
justify-content: center;
}

.navbar-brand img,
.site-name img {
max-width: 120px !important;
width: 120px !important;
}

.navbar-brand:not(.navbar-brand-logo),
h1.site-name a:not(.navbar-brand-logo) {
max-width: 200px !important;
font-size: 13px !important;
}

.non_index_header h1,
.article-header h1,
.page-header h1 {
font-size: 24px !important;
}
}

@media (max-width: 768px) {
.navbar-brand:not(.navbar-brand-logo),
h1.site-name a:not(.navbar-brand-logo) {
max-width: 160px !important;
font-size: 12px !important;
}

.non_index_header h1,
.article-header h1,
.page-header h1 {
font-size: 22px !important;
}
}

@media (max-width: 576px) {
.navbar-brand img,
.site-name img {
max-width: 100px !important;
width: 100px !important;
}

#headerNavigationContainer .container {
padding: 6px 15px !important;
}
}
</style>

<script>
// ===== OPTIMIZED JAVASCRIPT WITH LOGIN/REGISTER FIX =====
(function() {
'use strict';

let hasRun = false;

function forceShowLoginRegister() {
const allLinks = document.querySelectorAll('a');

let loginCount = 0;
let registerCount = 0;

allLinks.forEach(function(link) {
const href = link.href || '';
const text = link.textContent || '';

if ((href.includes('login') || text.toLowerCase().includes('login')) && !href.includes('logout')) {
loginCount++;
link.style.setProperty('display', 'inline-flex', 'important');
link.style.setProperty('visibility', 'visible', 'important');
link.style.setProperty('opacity', '1', 'important');
link.style.setProperty('position', 'relative', 'important');
link.style.setProperty('z-index', '999', 'important');

const parentLi = link.closest('li');
if (parentLi) {
parentLi.style.setProperty('display', 'inline-flex', 'important');
parentLi.style.setProperty('visibility', 'visible', 'important');
parentLi.style.setProperty('opacity', '1', 'important');
parentLi.style.setProperty('position', 'relative', 'important');
parentLi.style.setProperty('z-index', '999', 'important');
}
}

if (href.includes('register') || text.toLowerCase().includes('register')) {
registerCount++;
link.style.setProperty('display', 'inline-flex', 'important');
link.style.setProperty('visibility', 'visible', 'important');
link.style.setProperty('opacity', '1', 'important');
link.style.setProperty('position', 'relative', 'important');
link.style.setProperty('z-index', '999', 'important');

const parentLi = link.closest('li');
if (parentLi) {
parentLi.style.setProperty('display', 'inline-flex', 'important');
parentLi.style.setProperty('visibility', 'visible', 'important');
parentLi.style.setProperty('opacity', '1', 'important');
parentLi.style.setProperty('position', 'relative', 'important');
parentLi.style.setProperty('z-index', '999', 'important');
}
}
});

console.log('Login buttons found:', loginCount);
console.log('Register buttons found:', registerCount);

if (loginCount === 0 || registerCount === 0) {
const hiddenElements = document.querySelectorAll('[style*="display: none"], [style*="visibility: hidden"]');
hiddenElements.forEach(function(el) {
const text = el.textContent || '';
const href = el.href || '';
if ((text.toLowerCase().includes('login') || href.includes('login')) && !href.includes('logout')) {
el.style.setProperty('display', 'inline-flex', 'important');
el.style.setProperty('visibility', 'visible', 'important');
el.style.setProperty('opacity', '1', 'important');
}
if (text.toLowerCase().includes('register') || href.includes('register')) {
el.style.setProperty('display', 'inline-flex', 'important');
el.style.setProperty('visibility', 'visible', 'important');
el.style.setProperty('opacity', '1', 'important');
}
});
}
}

function applyButtonStyles() {
document.querySelectorAll('#main-navigation > li > a, .navbar-primary > li > a').forEach(function(el) {
const isInNavigationUser = el.closest('#navigationUser');
const href = el.href || '';

if (isInNavigationUser ||
href.includes('login') ||
href.includes('register') ||
href.includes('logout')) {
return;
}

el.style.setProperty('color', '#1f2937', 'important');
el.style.setProperty('background-color', 'transparent', 'important');
el.style.setProperty('border-bottom', '2px solid transparent', 'important');

el.onmouseenter = function() {
this.style.setProperty('border-bottom', '2px solid #1f2937', 'important');
};

el.onmouseleave = function() {
this.style.setProperty('border-bottom', '2px solid transparent', 'important');
};
});

const navigationUser = document.getElementById('navigationUser');
if (navigationUser) {
navigationUser.style.setProperty('display', 'flex', 'important');
navigationUser.style.setProperty('visibility', 'visible', 'important');

const adminLinks = navigationUser.querySelectorAll(':scope > li > a');
adminLinks.forEach(function(el) {
const href = el.href || '';

el.style.setProperty('display', 'inline-flex', 'important');
el.style.setProperty('visibility', 'visible', 'important');

if (href.includes('logout') || href.includes('signOut')) {
return;
}

el.style.setProperty('color', '#1e40af', 'important');
el.style.setProperty('border', '2px solid #1e40af', 'important');
el.style.setProperty('background-color', 'transparent', 'important');

const badge = el.querySelector('.badge');

el.onmouseenter = function() {
this.style.setProperty('background-color', '#1e40af', 'important');
this.style.setProperty('color', '#ffffff', 'important');
this.style.setProperty('border', '2px solid #1e40af', 'important');
if (badge) {
badge.style.setProperty('background-color', '#ffffff', 'important');
badge.style.setProperty('color', '#1e40af', 'important');
}
};

el.onmouseleave = function() {
this.style.setProperty('background-color', 'transparent', 'important');
this.style.setProperty('color', '#1e40af', 'important');
this.style.setProperty('border', '2px solid #1e40af', 'important');
if (badge) {
badge.style.setProperty('background-color', '#1e40af', 'important');
badge.style.setProperty('color', '#ffffff', 'important');
}
};
});
}

document.querySelectorAll('.dropdown-menu > li > a').forEach(function(el) {
el.style.setProperty('color', '#1e40af', 'important');
el.style.setProperty('background-color', 'transparent', 'important');

el.onmouseenter = function() {
this.style.setProperty('background-color', '#FF8603', 'important');
this.style.setProperty('color', '#ffffff', 'important');
};

el.onmouseleave = function() {
this.style.setProperty('background-color', 'transparent', 'important');
this.style.setProperty('color', '#1e40af', 'important');
};
});
}

function initHoverDropdown() {
if (window.innerWidth > 992) {
const dropdowns = document.querySelectorAll('.navbar-nav .dropdown, #main-navigation .dropdown, #navigationUser .dropdown');

dropdowns.forEach(function(dropdown) {
let timeoutId;

dropdown.addEventListener('mouseenter', function() {
clearTimeout(timeoutId);
const menu = this.querySelector('.dropdown-menu');
if (menu) {
menu.style.display = 'block';
setTimeout(function() {
menu.style.opacity = '1';
menu.style.transform = 'translateY(0)';
}, 10);
}
});

dropdown.addEventListener('mouseleave', function() {
const menu = this.querySelector('.dropdown-menu');
clearTimeout(timeoutId);

timeoutId = setTimeout(function() {
if (menu) {
menu.style.opacity = '0';
menu.style.transform = 'translateY(-10px)';
setTimeout(function() {
menu.style.display = 'none';
}, 300);
}
}, 100);
});
});
}
}

function initMobileMenu() {
const toggleButton = document.querySelector('.navbar-toggle');
const navMenu = document.getElementById('nav-menu');

if (toggleButton && navMenu) {
const newToggleButton = toggleButton.cloneNode(true);
toggleButton.parentNode.replaceChild(newToggleButton, toggleButton);

newToggleButton.addEventListener('click', function(e) {
e.preventDefault();
navMenu.classList.toggle('in');
this.classList.toggle('collapsed');
});
}

if (window.innerWidth <= 992) {
const dropdownToggles = document.querySelectorAll('.dropdown > a.dropdown-toggle');
dropdownToggles.forEach(function(toggle) {
const newToggle = toggle.cloneNode(true);
toggle.parentNode.replaceChild(newToggle, toggle);

newToggle.addEventListener('click', function(e) {
e.preventDefault();
const parent = this.closest('.dropdown');
parent.classList.toggle('open');
});
});
}
}

function init() {
if (hasRun) return;
hasRun = true;

forceShowLoginRegister();
applyButtonStyles();
initHoverDropdown();
initMobileMenu();
}

if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', init);
} else {
init();
}

setTimeout(init, 100);
setTimeout(forceShowLoginRegister, 200);
setTimeout(forceShowLoginRegister, 300);
setTimeout(forceShowLoginRegister, 500);
setTimeout(forceShowLoginRegister, 800);
setTimeout(forceShowLoginRegister, 1000);
setTimeout(forceShowLoginRegister, 1500);

if (typeof MutationObserver !== 'undefined') {
const observer = new MutationObserver(function(mutations) {
let shouldRecheck = false;
mutations.forEach(function(mutation) {
if (mutation.addedNodes.length > 0 || mutation.type === 'attributes') {
shouldRecheck = true;
}
});
if (shouldRecheck) {
forceShowLoginRegister();
}
});

observer.observe(document.body, {
childList: true,
subtree: true,
attributes: true,
attributeFilter: ['style', 'class', 'hidden']
});
}

let checkCount = 0;
const intervalId = setInterval(function() {
forceShowLoginRegister();
checkCount++;
if (checkCount >= 5) {
clearInterval(intervalId);
}
}, 2000);
})();