:root{
  --wx-bg:#ffffff;
  --wx-text:#0f172a;
  --wx-muted:#475569;
  --wx-line:rgba(15,23,42,.10);
  --wx-primary:#2563eb;
  --wx-primary-2:#1d4ed8;
  --wx-radius:14px;
}

.wx-header{
  position: sticky;
  top: 0;
  z-index: 1000;
  background: var(--wx-bg);
  border-bottom: 1px solid var(--wx-line);
}

.wx-nav{
  max-width: 1180px;
  margin: 0 auto;
  padding: 12px 18px;
  display: flex;
  align-items: center;
  gap: 14px;
}

.wx-brand{
  display:flex;
  align-items:center;
  gap:10px;
  text-decoration:none;
}

.wx-logo{
  height: 34px;
  width: auto;
  display:block;
}

/* Links desktop */
.wx-links{
  display:flex;
  align-items:center;
  gap: 10px;
  margin-left: 6px;
  flex: 1;
}

.wx-links a{
  color: var(--wx-muted);
  text-decoration:none;
  font-weight: 600;
  padding: 8px 10px;
  border-radius: 10px;
  transition: background .15s ease, color .15s ease;
}

.wx-links a:hover{
  background: rgba(37,99,235,.08);
  color: var(--wx-text);
}

.wx-links a.is-active{
  color: var(--wx-text);
  background: rgba(37,99,235,.10);
}

/* Ações (botões) */
.wx-actions{
  display:flex;
  align-items:center;
  gap: 10px;
}

.wx-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height: 40px;
  padding: 0 14px;
  border-radius: 999px;
  font-weight: 700;
  font-size: 14px;
  text-decoration:none;
  border: 1px solid transparent;
  cursor: pointer;
  white-space: nowrap;
}

.wx-btn-ghost{
  color: var(--wx-text);
  background: transparent;
  border-color: rgba(15,23,42,.12);
}

.wx-btn-ghost:hover{
  background: rgba(15,23,42,.04);
}

.wx-btn-primary{
  color: #fff;
  background: var(--wx-primary);
}

.wx-btn-primary:hover{
  background: var(--wx-primary-2);
}

.wx-logout{ margin:0; }

/* Burger (sem JS) */
.wx-menu-checkbox{
  position:absolute;
  left:-9999px;
}

.wx-burger{
  display:none;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  border: 1px solid rgba(15,23,42,.12);
  align-items:center;
  justify-content:center;
  flex-direction: column;
  gap: 4px;
  cursor:pointer;
  user-select:none;
}

.wx-burger span{
  display:block;
  width: 18px;
  height: 2px;
  background: var(--wx-text);
  border-radius: 2px;
}

/* NÃO deixe pages (profile.css/dashboard.css) empurrar a página toda */
body { padding-top: 0 !important; }

/* Compensa a navbar FIXA apenas quando ela existe */
body:has(.wx-header) {
  padding-top: 66px; /* ajuste fino conforme altura real */
}

/* wrapper do menu (desktop: “transparente”) */
.wx-menu{
  display: contents; /* no desktop, não cria caixa extra */
}

/* MOBILE */
@media (max-width: 860px){

  .wx-burger{
    display:flex;
    margin-left: auto; /* hamburger sempre à direita */
  }

  /* menu vira dropdown único */
  .wx-menu{
    display:block;            /* fechado */
    position:absolute;
    left: 18px;
    right: 18px;
    top: calc(100% + 10px);  /* abaixo da barra */
    background:#fff;
    border: 1px solid var(--wx-line);
    border-radius: var(--wx-radius);
    padding: 12px;
    box-shadow: 0 12px 30px rgba(15,23,42,.10);
    
        /* estado fechado */
    opacity: 0;
    transform: translateY(-8px);
    pointer-events: none;
    max-height: 0;
    overflow: hidden;

    transition:
      opacity .18s ease,
      transform .18s ease,
      max-height .25s ease;
    
  }

  /* quando marcado, abre o painel */
  .wx-menu-checkbox:checked ~ .wx-menu{
    display:block;
        opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
    max-height: 70vh; /* suficiente pro menu */
  }

  /* links e actions agora são internos do painel */
  .wx-links{
    display:flex;
    flex-direction: column;
    align-items: stretch;
    width: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    gap: 6px;
  }

  .wx-links a{
    padding: 12px 12px;
    border-radius: 12px;
  }

  .wx-actions{
    display:flex;
    flex-direction: column;
    align-items: stretch;
    width: 100%;
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid var(--wx-line);
    gap: 10px;
    background: transparent;
  }

  .wx-btn{
    width: 100%;
    height: 44px;
  }

  /* importante: o header precisa ser âncora do absolute */
  .wx-nav{
    position: relative;
  }
}
