/**
 * @file topbar.css
 * @description Layout and styling for the macOS-style top navigation bar.
 */

.top-bar {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 36px;
  background-color: var(--topbar-bg);

  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);

  border-bottom: 1px solid var(--border-light);
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 16px;

  font-size: 14px;
  font-weight: 500;
  letter-spacing: -0.2px;
  z-index: 9999;
}

.top-bar-left,
.top-bar-right {
  display: flex;
  align-items: center;
  gap: 6px;
}

.menu-item {
  cursor: default;
  padding: 2px 12px;
  border-radius: var(--radius-item);
  transition: background-color 0.1s ease;
  height: 28px;
  display: flex;
  align-items: center;
}

.menu-item:hover,
.menu-item.active {
  background-color: var(--hover-bg);
  color: var(--text-main);
}

#sys-clock {
  font-variant-numeric: tabular-nums;
  padding: 2px 10px;
}

/* -------------------------------------- */
/* Dropdown Menu                          */
/* -------------------------------------- */
.has-dropdown {
  position: relative;
}

.dropdown-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  margin-top: 6px;

  background-color: var(--menu-bg);
  backdrop-filter: blur(30px);
  -webkit-backdrop-filter: blur(30px);

  border: 1px solid var(--border-menu);
  border-radius: var(--radius-menu);
  box-shadow: var(--shadow-menu);
  min-width: 220px;
  flex-direction: column;
  padding: 5px;
}

/* 
 * Added the '>' direct child selector. 
 * This ensures ONLY the top-level menu opens automatically, 
 * leaving nested submenus hidden.
 */
.menu-item.active > .dropdown-menu {
  display: flex;
}

.dropdown-item {
  padding: 6px 10px;
  margin-bottom: 1px;
  color: var(--text-main);
  font-size: 13px;
  border-radius: var(--radius-item);
  cursor: default;
  transition:
    background-color 0.05s ease,
    color 0.05s ease;

  display: flex;
  align-items: center;
  justify-content: space-between;
}

.item-left {
  display: flex;
  align-items: center;
  gap: 10px;
}

.dropdown-item img {
  width: 14px;
  height: 14px;
  object-fit: contain;
  transition: filter 0.05s ease;
}

.dropdown-item:last-child {
  margin-bottom: 0;
}

.dropdown-item:hover {
  background-color: var(--accent-color);
  color: #ffffff;
}

.dropdown-item:hover > .item-left img,
.dropdown-item:hover > .chevron {
  filter: brightness(0) invert(1);
}

/* -------------------------------------- */
/* Nested Sub-Menu Logic                  */
/* -------------------------------------- */
.has-submenu {
  position: relative;
}

.chevron {
  font-size: 10px;
  opacity: 0.5;
  transition: filter 0.05s ease;
}

.submenu {
  display: none;
  position: absolute;
  top: -6px;
  left: 100%;
  margin-left: 4px;
}

.submenu.active {
  display: flex;
}
