/* ═══════════════════════════════════════════════════════
   BE Founding Members — Navigation Bar
   ═══════════════════════════════════════════════════════ */

/* Reset for nav scope */
.be-nav, .be-nav * { margin: 0; padding: 0; box-sizing: border-box; }

.be-nav {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 56px;
  background: #1a1a2e;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 24px;
  font-family: 'Inter', sans-serif;
  box-shadow: 0 2px 12px rgba(0,0,0,.3);
}

/* Logo */
.be-nav__logo {
  text-decoration: none;
  font-size: 15px;
  font-weight: 700;
  color: #fff;
  white-space: nowrap;
  letter-spacing: -0.3px;
  transition: color .2s;
  flex-shrink: 0;
}
.be-nav__logo:hover { color: #0d7377; }
.be-nav__logo span { color: #d4a017; }

/* Desktop Menu */
.be-nav__menu {
  display: flex;
  align-items: center;
  gap: 4px;
  list-style: none;
}

/* Dropdown wrapper */
.be-nav__dropdown {
  position: relative;
}

/* Dropdown trigger */
.be-nav__trigger {
  background: none;
  border: none;
  color: rgba(255,255,255,.75);
  font-family: 'Inter', sans-serif;
  font-size: 13px;
  font-weight: 500;
  padding: 8px 14px;
  cursor: pointer;
  border-radius: 6px;
  transition: all .2s;
  white-space: nowrap;
}
.be-nav__trigger:hover,
.be-nav__trigger.active {
  color: #fff;
  background: rgba(13,115,119,.2);
}
.be-nav__trigger.active {
  color: #0d7377;
}
.be-nav__trigger::after {
  content: ' \25BE';
  font-size: 10px;
  opacity: .5;
}

/* Dropdown panel */
.be-nav__panel {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  min-width: 220px;
  background: #1a1a2e;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 10px;
  padding: 8px 0;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-6px);
  transition: all .2s ease;
  box-shadow: 0 12px 32px rgba(0,0,0,.4);
}
.be-nav__dropdown:hover .be-nav__panel,
.be-nav__dropdown.open .be-nav__panel {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* Dropdown links */
.be-nav__panel a {
  display: block;
  padding: 9px 18px;
  color: rgba(255,255,255,.7);
  text-decoration: none;
  font-size: 13px;
  font-weight: 400;
  transition: all .15s;
  border-left: 3px solid transparent;
}
.be-nav__panel a:hover {
  color: #fff;
  background: rgba(13,115,119,.12);
  border-left-color: #0d7377;
}
.be-nav__panel a.current {
  color: #0d7377;
  background: rgba(13,115,119,.08);
  border-left-color: #0d7377;
  font-weight: 600;
}

/* Panel divider */
.be-nav__panel .divider {
  height: 1px;
  background: rgba(255,255,255,.06);
  margin: 6px 0;
}

/* Right-side icons */
.be-nav__icons {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
}
.be-nav__icon-btn {
  background: none;
  border: none;
  color: rgba(255,255,255,.6);
  cursor: pointer;
  padding: 8px;
  border-radius: 6px;
  transition: all .2s;
  display: flex;
  align-items: center;
  justify-content: center;
}
.be-nav__icon-btn:hover {
  color: #fff;
  background: rgba(255,255,255,.08);
}
.be-nav__icon-btn svg {
  width: 18px;
  height: 18px;
}

/* Hamburger (mobile only) */
.be-nav__hamburger {
  display: none;
  background: none;
  border: none;
  color: #fff;
  cursor: pointer;
  padding: 8px;
  border-radius: 6px;
}
.be-nav__hamburger svg {
  width: 22px;
  height: 22px;
}

/* Mobile overlay */
.be-nav__mobile {
  display: none;
  position: fixed;
  top: 0;
  right: -300px;
  width: 300px;
  height: 100vh;
  background: #1a1a2e;
  z-index: 10000;
  transition: right .3s ease;
  overflow-y: auto;
  padding: 0;
}
.be-nav__mobile.open {
  right: 0;
}
.be-nav__mobile-backdrop {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,.5);
  z-index: 9999;
  opacity: 0;
  transition: opacity .3s;
}
.be-nav__mobile-backdrop.open {
  opacity: 1;
}

/* Mobile header */
.be-nav__mobile-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.be-nav__mobile-header span {
  font-size: 14px;
  font-weight: 700;
  color: #fff;
}
.be-nav__mobile-close {
  background: none;
  border: none;
  color: rgba(255,255,255,.6);
  cursor: pointer;
  padding: 4px;
}
.be-nav__mobile-close svg {
  width: 20px;
  height: 20px;
}

/* Mobile sections */
.be-nav__mobile-section {
  padding: 12px 0 8px;
  border-bottom: 1px solid rgba(255,255,255,.05);
}
.be-nav__mobile-section-title {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #d4a017;
  padding: 4px 20px 8px;
}
.be-nav__mobile-section a {
  display: block;
  padding: 10px 20px 10px 28px;
  color: rgba(255,255,255,.7);
  text-decoration: none;
  font-size: 14px;
  transition: all .15s;
}
.be-nav__mobile-section a:hover,
.be-nav__mobile-section a.current {
  color: #0d7377;
  background: rgba(13,115,119,.08);
}

/* Mobile footer buttons */
.be-nav__mobile-footer {
  padding: 16px 20px;
  display: flex;
  gap: 12px;
}
.be-nav__mobile-footer button {
  flex: 1;
  padding: 10px;
  border-radius: 8px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
  color: rgba(255,255,255,.7);
  font-family: 'Inter', sans-serif;
  font-size: 12px;
  cursor: pointer;
  transition: all .2s;
}
.be-nav__mobile-footer button:hover {
  background: rgba(255,255,255,.08);
  color: #fff;
}

/* Body offset */
body.has-be-nav {
  padding-top: 56px;
}

/* ── Dark mode ────────────────────────────── */
body.dark-mode {
  background: #0f0f1a !important;
  color: #d0d0d8 !important;
}
body.dark-mode .wrap,
body.dark-mode .library-wrap {
  background: #0f0f1a;
}
body.dark-mode h2, body.dark-mode h3, body.dark-mode h4 {
  color: #e8e8f0 !important;
}

/* ── Responsive ───────────────────────────── */
@media (max-width: 860px) {
  .be-nav__menu { display: none; }
  .be-nav__icons .be-nav__icon-btn:not(.be-nav__dark-toggle) { display: none; }
  .be-nav__hamburger { display: block; }
  .be-nav__mobile { display: block; }
  .be-nav__mobile-backdrop { display: block; pointer-events: none; }
  .be-nav__mobile-backdrop.open { pointer-events: auto; }
}

@media (max-width: 480px) {
  .be-nav { padding: 0 16px; }
  .be-nav__logo { font-size: 13px; }
}

/* ── BE Assistant link ────────────────────── */
.be-nav__assistant-link {
  display: flex;
  align-items: center;
  padding: 7px 14px;
  margin-left: 4px;
  font-size: 14px;
  font-weight: 600;
  color: #0d7377;
  background: rgba(13,115,119,0.08);
  border: 1px solid rgba(13,115,119,0.25);
  border-radius: 20px;
  text-decoration: none;
  white-space: nowrap;
  transition: all 0.2s ease;
}
.be-nav__assistant-link:hover {
  background: rgba(13,115,119,0.16);
  border-color: rgba(13,115,119,0.5);
  color: #0a5c5f;
}
@media (max-width: 860px) {
  .be-nav__assistant-link { display: none; }
}

/* ── Get Certified link ───────────────────── */
.be-nav__cert-link {
  display: flex;
  align-items: center;
  padding: 7px 14px;
  margin-left: 4px;
  font-size: 14px;
  font-weight: 700;
  color: #a07000;
  background: rgba(212,160,23,0.1);
  border: 1px solid rgba(212,160,23,0.35);
  border-radius: 20px;
  text-decoration: none;
  white-space: nowrap;
  transition: all 0.2s ease;
}
.be-nav__cert-link:hover {
  background: rgba(212,160,23,0.2);
  border-color: rgba(212,160,23,0.6);
  color: #7a5500;
}
@media (max-width: 860px) {
  .be-nav__cert-link { display: none; }
}

/* ── Mobile cert link ─────────────────────── */
.be-nav__mobile-cert {
  color: #c89000 !important;
  font-weight: 600;
}

/* ── Manage Plan button ───────────────────── */
.be-nav__manage-btn {
  display: flex;
  align-items: center;
  padding: 7px 14px;
  margin-left: 4px;
  font-size: 13px;
  font-weight: 600;
  color: #555;
  background: rgba(0,0,0,0.04);
  border: 1px solid rgba(0,0,0,0.12);
  border-radius: 20px;
  cursor: pointer;
  white-space: nowrap;
  transition: all 0.2s ease;
}
.be-nav__manage-btn:hover {
  background: rgba(0,0,0,0.09);
  color: #222;
}
.be-nav__manage-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
@media (max-width: 860px) {
  .be-nav__manage-btn { display: none; }
}

/* ── Mobile manage link ───────────────────── */
.be-nav__mobile-manage {
  background: none;
  border: none;
  padding: 10px 0;
  font-size: 15px;
  font-weight: 500;
  color: #555;
  cursor: pointer;
  text-align: left;
  width: 100%;
}
